这就是渲染代码现在的样子(而且我知道这样做是不安全的):
render: function() {
return (
<div className="container-fluid pages_container">
<p dangerouslySetInnerHTML={{__html: this.state.page.body}} />
</div>
);
}
问题是我怎样才能安全地渲染它?
最佳答案
引用 https://facebook.github.io/react/docs/dom-elements.html#dangerouslysetinnerhtml
<script src="https://cdnjs.cloudflare.com/ajax/libs/marked/0.3.2/marked.min.js"></script>
render: function() {
return (
<div className="container-fluid pages_container">
<p dangerouslySetInnerHTML={{__html: marked(this.state.page.body, {sanitize: true})}} />
</div>
);
}
关于javascript - React.js 将文本呈现为 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31850614/