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