React 的设计理念:当道具没有改变时,为什么要更新子组件?



正如我们所知,当一个节点发生变化时,每个子组件都会自动重新渲染;即使他们的道具保持不变。

使用CCD_ 1可以围绕这一点进行设计。

然而,我很好奇,为什么默认情况下需要重新渲染?我想不出一个例子,如果一个子组件的道具相同,就需要重新渲染。虽然也许我错过了什么。。。

即使他们的道具保持相同的

问题就在这里证明道具是一样的是不平凡的。让我们以对象AB为例,这两个对象都是JSON的Meg字符串:如何在不进行深入比较的情况下检查它们是否相等?

使用引用相等是不够的(因为存在原位突变(,浅层比较(a laPureComponent(也不总是足够的,因为它们是浅层的。因此,我们必须选择接受这些行为。

最新更新