我正在阅读几篇关于如何防止react-redux
在只有一件小事情发生变化时重新呈现整个页面的文章。 一篇文章指出,不是将所有东西都包装成一个大的container
(如图1所示),而是将所有东西都包装成更小的containers
(如图2所示)。如果Container 2
中的内容发生变化,则只有Component 2
和Component 3
正在重新渲染。 Component 1
不会重新呈现。防止当状态发生变化时重新呈现整个页面的反应Reduce
我有以下问题:
- 如果我换在较小的容器的一切,我需要 “几个” 全局状态,每个
container
一个(如伪代码o所示在图的底部)。这是常见的做法吗? - 如果可以拥有“几个”全局状态,并且我需要
Container1
在Container2
中的一些属性,那么我需要将它与两个全局状态关联起来。对我来说,感觉它会很快变得凌乱。什么来自哪里? - 何时何地使用
react
方法shouldComponentUpdate()
?使用Big Container
方法我将如何区分哪些Component
应该重新渲染?如果在Components
中实施,则它们不会“转储”了,因为它们需要访问全局状态以决定是否重新渲染。我无法重复使用Components
,因为每个Component
都有自己的特殊情况,何时重新提交,何时不重复。我不知道在哪里以及何时使用shouldComponentUpdate()
请注意,我相当的新本,并有可能作出错误的假设等。我基本上想知道如何不重新渲染整个页面,只有当有一件事需要更新。来自谷歌的结果差异很大。