React Native Firebase Auth持久化:无法导入getReactNativePersistence
Expo + Firebase 认证持久化配置问题
我用Expo构建React Native应用,后端采用Firebase做认证与数据库支撑。目前登录、登出以及Firestore数据获取功能均正常,但认证持久化功能失效。根据Expo文档指引,需修改Auth配置以切换持久化管理器:
默认配置
import { initializeApp } from "firebase/app"; import {getAuth } from "firebase/auth"; // Initialize Firebase const firebaseConfig = {...}; export const app = initializeApp(firebaseConfig); export const auth = getAuth(app);
修改后的目标配置
import { initializeApp } from "firebase/app"; import { initializeAuth, getReactNativePersistence, } from "firebase/auth/react-native"; import AsyncStorage from "@react-native-async-storage/async-storage"; // Initialize Firebase const firebaseConfig = {}; export const app = initializeApp(firebaseConfig); export const auth = initializeAuth(app, { persistence: getReactNativePersistence(AsyncStorage), });
遇到的错误
已安装@react-native-async-storage/async-storage,但导入getReactNativePersistence时出现以下错误:
// 我尝试这样导入 --> import { initializeAuth, getReactNativePersistence } from "firebase/auth/react-native"; // --> 得到错误:"Cannot find module 'firebase/auth/react-native' or its corresponding type declarations.ts(2307)"
已尝试的排查步骤
- 克隆示例仓库验证导入正常,依赖无明显差异,确认
getReactNativePersistence位于\node_modules\@firebase\auth\dist\rn\src\platform_react_native\persistence\react_native.d.ts; - 在本地项目中找到该文件,位置与示例一致;
- 重新安装Firebase,无效果;
- 克隆仓库重新初始化,问题仍存在。
内容的提问来源于stack exchange,提问作者Bubulux
相关产品推荐
相关产品推荐

