如何在 Firebase Modular SDK V9 中使用 setPersistence?

Kam*_*mal 14 javascript firebase firebase-authentication

我尝试 firebase 9 版本持久登录:

setPersistence(auth, firebaseApp.auth.Persistence.LOCAL).then( async() => {
  // login
}).catch((e) => {
  this.error = e.message
})
Run Code Online (Sandbox Code Playgroud)

显示错误:

Uncaught TypeError: Cannot read property 'Persistence' of undefined
Run Code Online (Sandbox Code Playgroud)

有什么线索吗?

Dha*_*raj 32

您需要这样导入持久性状态:

import {
  getAuth,
  setPersistence,
  browserLocalPersistence,
  browserSessionPersistence,
  inMemoryPersistence
} from "firebase/auth";

const auth = getAuth()

await setPersistence(auth, browserLocalPersistence);
Run Code Online (Sandbox Code Playgroud)
命名空间版本 V8 模块化版本V9
firebase.auth.Auth.Persistence.LOCAL browserLocalPersistence
firebase.auth.Auth.Persistence.SESSION browserSessionPersistence
firebase.auth.Auth.Persistence.NONE inMemoryPersistence