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