我在处理facebook的ReactJS时遇到了麻烦。每当我使用ajax并想要显示html数据时,ReactJS都会将其显示为文本。(见下图)
数据通过jquery Ajax的成功回调函数显示。
$.ajax({
url: url here,
dataType: "json",
success: function(data) {
this.setState({
action: data.action
})
}.bind(this)
});
有什么简单的方法可以把它转换成html吗?我应该如何使用ReactJS来完成呢?
发布于 2013-10-10 00:34:23
默认情况下,React转义HTML以防止XSS (Cross-site scripting)。如果您确实想呈现HTML,则可以使用dangerouslySetInnerHTML
属性:
<td dangerouslySetInnerHTML={{__html: this.state.actions}} />
React故意强制使用这种繁琐的语法,这样您就不会意外地将文本呈现为HTML并引入XSS错误。
发布于 2019-12-02 13:28:06
npm i html-react-parser;
import Parser from 'html-react-parser';
<td>{Parser(this.state.archyves)}</td>
发布于 2020-04-23 04:30:53
对于那些仍在尝试的人,npm安装了react-html-parser
当我安装它的时候,它每周有123628的下载量。
import ReactHtmlParser from 'react-html-parser'
<div>{ReactHtmlParser(htmlString)}</div>
https://stackoverflow.com/questions/19266197
复制相似问题