React - 忽略子节点

时间:2014-07-21 12:19:42

标签: javascript dom reactjs

是否有办法阻止对反应组件中嵌入的节点进行移除/更改。

例如,我有一个react组件,它充当非反应组件的容器,该组件自己管理它的DOM。有没有办法为reactjs标记这些组件,以便它不会修改它的DOM?

在我的情况下,我希望我的反应组件可以被CKeditor内联编辑,但是反应总是删除/破坏编辑器和它添加到DOM的所有节点,因为它们没有在react组件本身中定义。所以它认为那些元素不应该存在。

有什么想法吗?

2 个答案:

答案 0 :(得分:13)

如果您从组件上的false方法返回shouldComponentUpdate,则React将跳开,并且将跳过该子树的整个对帐过程。当然,这意味着您需要在该区域自己管理所有DOM突变,并且无法利用React。

答案 1 :(得分:0)

https://facebook.github.io/react/tips/dangerously-set-inner-html.html上查看dangerouslySetInnerHTML。

这是添加标记的方法,该标记不会影响React的更新方法以及不受支持的标记。

这样您仍然可以更新 组件,而不会更新部分内容。