3
我知道您可以使用shouldComponentUpdate
來決定是否應該調用渲染。引用文檔:如何忽略ReactJs中狀態的屬性更新?
默認情況下,
shouldComponentUpdate
總是返回true,以防止 微妙的錯誤時,狀態發生突變,但如果你仔細 始終把狀態不可改變的,只從道具和狀態 閱讀在render()中,您可以用 實現替代shouldComponentUpdate
,該實現將舊的道具和狀態與 替換進行比較。
但是我的麻煩有點不同。我計算了componentDidUpdate
中的一個值,因爲需要第一個渲染器來執行我的計算,並且我想將此值存儲在狀態中以便稍後可以在render
函數中使用它,但是我不想當我修改它時觸發渲染。
你會怎麼做?這是正確的路嗎? 我應該在其他地方存儲這個值嗎?直接在this
?
哦!這確實是一個有趣的觸發器!我確實在文檔中看到過它,但只是將其視爲一種生命週期通知點。我會盡力而爲,讓你張貼! thx – Sephy
對我來說,這似乎是一個很好的地方,根據道具重新計算狀態。它就像'getInitialState'。與'getInitialState'不同,它會在每個道具(和狀態)更新時觸發。 – Andreyco
是的,這個伎倆,非常感謝! – Sephy