亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

VueJS 和 firebase:頁(yè)面刷新後檢查使用者是否登入
P粉680487967
P粉680487967 2023-08-28 22:02:53
0
1
650
<p>我正在使用 Vue 3 和 firebase 框架開(kāi)發(fā)一個(gè) Web 應(yīng)用程式。作為 stroe,我使用 Pinia。對(duì)於身份驗(yàn)證,我使用 firebase,到目前為止效果很好,用戶(hù)可以註冊(cè)並登入。使用者登入後,他的資料就會(huì)儲(chǔ)存在 pinia 儲(chǔ)存體中。 </p> <p>但是,一旦使用者登入並重新載入頁(yè)面,pinia 儲(chǔ)存中的資料就會(huì)遺失。如果我使用 firebase 函數(shù) <code>onAuthStateChanged()</code> ,仍然有使用者登入。 </p> <p>我的第一個(gè)解決方案是每次啟動(dòng)應(yīng)用程式時(shí)呼叫 <code>onAuthStateChanged()</code> 函數(shù),然後 pinia 儲(chǔ)存體會(huì)填入所需的資料。我已經(jīng)嘗試在 firebase 設(shè)定檔中呼叫 <code>onAuthStateChanged()</code> 函數(shù),但 pinia 儲(chǔ)存尚未在此處初始化。 </p> <p>Vue 應(yīng)用程式中的哪個(gè)點(diǎn)必須調(diào)用 <code>onAuthStateChanged()</code> 函數(shù),以便用戶(hù)在刷新後自動(dòng)登錄,並且我可以將用戶(hù)資料寫(xiě)入 Pinia 儲(chǔ)存? </ p>
P粉680487967
P粉680487967

全部回覆(1)
P粉195402292

我不確定您嘗試過(guò)什麼,但我知道這會(huì)起作用。當(dāng)然,您可以將 onAuthStateChanged 移出您的商店,它仍然可以工作。請(qǐng)記住,您必須使用觀(guān)察者或計(jì)算道具來(lái)追蹤 store.user 並更新 UI。

import { getAuth, onAuthStateChanged } from 'firebase/auth';

const auth = getAuth();
onAuthStateChanged(auth, async () => {
  const store = useStore();
  store.setUser();
});


const useStore = defineStore('store', {
  state: () => ({ 
    user: null
  }),
  actions: {
    setUser() {
      // Set user here
      // this.user = ...
    }
  }
});
最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板