Reactjs 当jQuery或React以外的库更新DOM时,虚拟DOM是如何更新的?

Reactjs 当jQuery或React以外的库更新DOM时,虚拟DOM是如何更新的?,reactjs,Reactjs,例如: 如果project出于某种原因同时使用jQuery和React,并且我尝试删除DOM中的一个节点,那么VDOM如何得到更改通知?React不会知道这些更新。尽管如果遇到另一个重新渲染,react会将节点添加回DOM,因为它仍然存在于虚拟DOM中 问题是,如果你遇到react想要操纵你刚刚删除的节点的情况,你会得到DomeExceptions错误,这将导致你的应用程序崩溃 如果您不确定自己在做什么,我建议不要从React外部更新/删除React DOM 从官方文件: React不知道在Re

例如:
如果project出于某种原因同时使用jQuery和React,并且我尝试删除DOM中的一个节点,那么VDOM如何得到更改通知?

React不会知道这些更新。尽管如果遇到另一个重新渲染,react会将节点添加回DOM,因为它仍然存在于虚拟DOM中

问题是,如果你遇到react想要操纵你刚刚删除的节点的情况,你会得到DomeExceptions错误,这将导致你的应用程序崩溃

如果您不确定自己在做什么,我建议不要从React外部更新/删除React DOM

从官方文件:

React不知道在React之外对DOM所做的更改。它根据自己的内部表示确定更新,如果相同的DOM节点被另一个库操作,React会变得混乱,无法恢复

这并不意味着将React与影响DOM的其他方法结合起来是不可能的,甚至不一定是困难的,您只需要注意它们各自在做什么

在文档中查找更多信息:


React只是一个构建组件的库。负责更新dom的
呈现程序是
react dom
。这个过程被称为协调(在任何平台上),你可以把它想象成一个包装器,一个知道如何更新主机平台的黑盒子。使用
jquery
更新
DOM
不会触发react中的任何更改。他们没有任何联系