透過 useContext 讓狀態可以被每個元件存取
#
建立 Context在 src 資料夾中新增 contexts
資料夾,並建立 AuthContext.js
:
src/contexts/AuthContext.js
#
將資料傳入 Provider 中由於 AuthContext 的資料主要會在 App
元件中透過 useFacebookLogin
取得,因此在 App.js
中將這些資料灌入 Provider 中:
src/App.js
#
取用 Context 中的內容在 Footer 中有使用了 handleFBLogout
的方法,它原本是先從 App 傳到 TodoApp 再傳到 Footer 元件內,現在我們可以直接從 Footer 元件中,透過 useContext
取得這個方法:
src/components/Footer.js
src/views/Login.js