【发布时间】:2016-04-19 13:14:35
【问题描述】:
这可能是我的一个误解,但我有以下情况:
我有一个名为 DaliBox 的 React 组件,它具有一些智能(拖动、调整大小等),其中可能包含一些我不知道的 HTML,并使用 __dangerouslySetInnerHTML 分配给 DaliBox。但是,如果该 HTML 中有一个自定义标签(在本例中为 <plugin />),那么我希望它托管一个新的 React 组件(PluginPlaceholder),该组件将充当 DaliBox 容器。
我所做的是,在 ComponentDidMount 内部,在 DOMNNode 中找到 <plugin /> 标记,然后使用 ReactDOM.render 渲染传递必要道具的 PluginPlaceholder。问题是,当使用 Chrome 的 React DevTools 扩展时,我可以看到这会创建某种不同的“树”,迫使我手动更新内容。
问题是,我做错了吗?这是唯一的方法还是可以在旧的 React 树中创建新的 React 树并让 React 发挥它的魔力并自动更新?
非常感谢您
【问题讨论】:
-
请编码 sn-ps 否则它永远不会发生
标签: javascript reactjs render children