我指的是在一個帖子中丹阿布拉莫夫指出:React PureComponent可以比Component慢嗎?怎麼樣?
PSA:React.PureComponent可以使您的應用程序速度較慢,如果你隨心使用。
有人能解釋一下?謝謝。
我指的是在一個帖子中丹阿布拉莫夫指出:React PureComponent可以比Component慢嗎?怎麼樣?
PSA:React.PureComponent可以使您的應用程序速度較慢,如果你隨心使用。
有人能解釋一下?謝謝。
PureComponent通過組件狀態和道具的淺層比較實現了shouldComponentUpdate。它將currentProps與nextProps(類似於state)進行比較,並且只有在發生更改時才調用render方法。這種比較的額外開銷肯定會減慢應用程序的速度,特別是如果你的組件和狀態很重。
我認爲你的解釋中缺少的是關鍵指出丹·阿布拉莫夫說:組件必須重新渲染的概率可能高於不需要重新渲染的概率。因此,如果結果已知,最好避免不必要的計算。最後,如果知道道具可能會改變的頻率,執行該組件的人可以提高性能。 – Amida
更進一步他說:「想想看,如果組件的道具通常比較不平坦,它會重新渲染,但它也必須運行檢查」 – Aaqib