將組件之間共享的狀態交給組件最近的公共父節點保管
總結:當某個 state 被多個 Component 依賴或影響時,就把該 state 提升到這些 Component 最近的父 Component 中管理,用 props 傳遞數據或函數來管理依賴或影響的行為。
狀態提升的缺點
無限狀態提升並不好,一旦提昇就改修改原來保存這個狀態的 Component 的程式碼,也要把數據傳遞路經的 Component 都修改一遍,好讓數據能一層層傳遞下去,但維護會有很大的問題。
狀態提升缺點的解決方案
Redux 狀態管理工具。
那些可以不用狀態提升
對於不會被多個 Component 互相依賴或影響的 state (例如下拉選單的收起或展開),保存在 Component 內部即可,不需要做提升或特殊管理。