為何需要額外創建一個元件檢查權限?
如果多個頁面都需要檢查是否為管理員,最好在路由層面進行控制,避免每個頁面都重複寫檢查邏輯,導致程式碼難以維護。
創建高階元件(HOC)檢查權限
先多創建一個高階元件 AdminRoute.js
,這個元件會檢查是否為管理員,如果是管理員就顯示該頁面,否則導向首頁。
1 | // ../components/AdminRoute.js |
路由設定
在 App.js
或路由設定中,使用 AdminRoute
包裹管理員專屬頁面。
1 | import AdminRoute from "./components/AdminRoute"; |
此時若去訪問有被 AdminRoute
包裹的頁面,如果不是管理員,就會被導向首頁,這樣就能達到管理員專屬頁面的效果,並避免在每頁重複撰寫檢查邏輯。
若您覺得這篇文章對您有幫助,歡迎分享出去讓更多人看到⊂◉‿◉つ~
留言版