![](/img/trans.png)
[英]In React, Firebase auth user is null every time I refresh the page
[英]React refresh user data on every page load
我在解決我正在開發的React應用程序中出現問題時遇到問題。 用戶登錄時,它將存儲有關該用戶的信息,例如他們的姓名和角色。 使用此方法,我們可以顯示用戶名,並且顯然可以使用其角色來顯示或隱藏組件。
我無法弄清楚的問題是,如果用戶的名稱更改,或者他們在登錄時角色更改,則信息不會更新。 現在,我可以在每次用戶編輯自己的個人資料時刷新數據,但是如果管理員用戶編輯的是登錄用戶的姓名或角色怎么辦? 在下一次登錄之前,它不會更新。
我考慮過使用withRouter
並執行history.listen
並在基本App.js
上每加載一次頁面時更新用戶信息。 我看到的問題是,它通常先后兩次被REPLACE
和PUSH
調用,所以我不想進行2次API調用。
有沒有辦法只能從路由更改中進行1個API調用? 我應該怎么做呢? 我什至能正確地做到這一點嗎? 是否有更好的方法來解決此問題? 我似乎找不到任何可以幫助我的東西。
您可以創建一個自定義Route組件,該組件在每次重定向時都調用API。 看看這個https://reacttraining.com/react-router/web/example/auth-workflow 。 在此示例中,“ PrivateRoute”組件用於檢查是否在每個請求中都對用戶進行了身份驗證。 您可以創建一個UpdateUserRoute組件來調用API並檢查用戶數據中的更改。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.