我正在使用React構建一個大型應用程序,其中共享父組件處理多個子項的所有狀態。其中一些兒童呈現超過1000種物品的清單。ReactJS - 父組件中`setState`的性能影響
我意識到,切換父級內的布爾值setState
將重新呈現父級,然後再次呈現其所有子級。
我的問題是,如果沒有一個列表項到孩子的變化,那麼就重新渲染造成孩子循環並一遍建立龐大的清單 - 每父再呈現時?
虛擬DOM在此扮演什麼角色?孩子是否重新構建列表,但是DOM從不需要更新,因爲差異可以看到列表元素沒有改變?
編輯: 最後,如果是這樣的話,key
屬性如何影響列表重新呈現?如果我有1000個項目都帶有唯一的密鑰,但是3個項目的密鑰是null
(意味着它們具有相同的密鑰值)那麼是否會重新呈現整個列表?
不錯!協調文檔提供了我正在尋找的大量良好信息!它讓我想到另一個關於帶有子組件的key屬性的問題。 – jacoballenwood