相关疑难解决方法(0)

使用dangerouslySetInnerHTML中的react组件进行反应

我有一个关于使用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>
        );
    }
});
Run Code Online (Sandbox Code Playgroud)

我期望

<ul>
    <li>
        <p>MySubComponent</p>
    </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

但代码与原始字符串相同,这意味着React不会转换MySubComponent.

有没有办法解决这个问题?上面的例子很简单,但我的实际代码非常复杂.非常感谢gimme一只手;)

reactjs react-jsx

2
推荐指数
2
解决办法
5446
查看次数

标签 统计

react-jsx ×1

reactjs ×1