我正在閱讀幾篇關於如何防止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()
請注意,我相當的新本,並有可能作出錯誤的假設等。我基本上想知道如何不重新渲染整個頁面,只有當有一件事需要更新。來自谷歌的結果差異很大。