簡體   English   中英

在React中,SetInnerHTML不適用於html標簽。

[英]In React dangerouslySetInnerHTML is not working for html tags.

在React中,SetInnerHTML不適用於html標簽。 它甚至不在React的主頁上工作。 鍵入<h1>this is heading.</h1> 來自React主頁的摘錄

我該如何在React中渲染HTML標簽? 為什么我們在React教程中為* <em>標簽傳遞*?

React主頁示例中,他們使用markdown markdown不理解HTML語法)Remarkable庫。如果您只想使用HTML,則從rawMarkup方法中刪除Remarkable - { __html: this.state.value }

 var HTMLEditor = React.createClass({ getInitialState: function() { return {value: 'Put here <h1>HTML</h1>'}; }, handleChange: function(e) { this.setState({ value: e.currentTarget.value }); }, markup: function() { return { __html: this.state.value }; }, render: function() { return ( <div className="html-editor"> <textarea onChange={ this.handleChange } defaultValue={this.state.value} /> <div className="html-editor__content" dangerouslySetInnerHTML={ this.markup() } /> </div> ); } }); ReactDOM.render(<HTMLEditor />, document.getElementById('container')); 
 .html-editor { border: 1px solid #000; padding: 10px; } .html-editor__content { margin: 10px 0 0 0; } 
 <script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js"></script> <div id="container"></div> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM