React 從版本 16.8 推出 Hook,在 16.8 以前都是使用 Class component ,今天我們會提一下為什麼會從 Class component 轉變到 Hook
React Hooks 是一組內建的函式,
不需要將 component 轉換為 Class,就可以在 Function component 內使用 狀態等功能。
基本 Hooks
進階 Hooks
狀態管理:
而 this 其實有蠻多坑的,如果不知道原理,每次在抓的時候就有可能抓到錯誤的目標
在 Hooks 中,並沒有 this 這個概念,所以就不需要擔心會踩到坑
生命週期:
componentDidMount
、 componentDidUpdate
、componentWillUnmount
Class component 光是在處理生命週期就需要三個方法來處理,
使用上不便利以外,
也會讓程式碼相對冗長。
Hooks 的推出讓我們在開發增加了便利性,除了輕量以外,也讓程式碼相對簡潔
Class component 雖然在處理生命週期及狀態管理時相對麻煩,不過如果理解概念就能彈性調整