在 React 的世界當中,Component 不管是 props 或是 state 的改變一律重繪(re-render)
PureComponent 實作了 React Component 生命週期中的 shouldComponentUpdate() ,他會「淺層比較 Component 的前一次與後一次 的 props 與 state,來決定要不要更新」。
shouldComponentUpdate()
簡單的來說,其實就 JavaScript 中的 === 運算子(comparison operator),如果你常寫 JavaScript 應該會很常用到它!也就是說,如果你有兩個 JavaScript 物件的變數 a 跟 b 要做淺層比較,就會使用 a === b 。
===
a === b
適用於 JavaScript 的物件型別 (包含物件與陣列),JavaScript 的六種基本型別不在討論範圍內 (包含 Boolean, undefined, null, String, Number 與 Symbol)。
Last updated 6 years ago