【发布时间】:2016-08-27 00:02:00
【问题描述】:
我有一个关于使用 React 的问题。正如您从标题中看到的那样,我想知道是否可以在 dangerouslySetInnerHTML 属性中使用 React 组件(由 React.createClass 创建)。我试过了,但是 React 只是打印代码而不像这样进行转换:
const MySubComponent = React.createClass({
render() {
return (<p>MySubComponent</p>);
}
});
...
let myStringHTML;
myStringHTML += "<ul>";
myStringHTML += " <li>";
myStringHTML += " <MySubComponent />";
myStringHTML += " </li>";
myStringHTML += "</ul>";
const MyComponent = React.createClass({
render() {
return (
<div dangerouslySetInnerHTML={{__html:myStringHTML}}></div>
);
}
});
我期待
<ul>
<li>
<p>MySubComponent</p>
</li>
</ul>
但代码和原始字符串一样,这意味着 React 没有转换 MySubComponent。
有没有办法解决这个问题?上面的例子很简单,但我的实际代码非常复杂。非常感谢帮我一把;)
【问题讨论】:
标签: reactjs