在firebase@10.1.0中如何导入getReactNativePersistence?
在Firebase@10.1.0中导入getReactNativePersistence的正确方法
正确导入路径
Firebase SDK 10.x版本调整了getReactNativePersistence的归属包,你需要从单独的@firebase/auth/react-native包导入,而非旧路径或主firebase/auth包:
import { getReactNativePersistence } from "@firebase/auth/react-native";
安装依赖
如果项目中尚未安装这个子包,先执行对应安装命令:
npm install @firebase/auth/react-native # 或使用yarn yarn add @firebase/auth/react-native # 或使用pnpm pnpm add @firebase/auth/react-native
Metro配置调整(Expo环境)
由于部分Firebase子包采用CommonJS格式,Metro默认可能无法正确解析,需修改metro.config.js添加对cjs扩展名的支持:
const { getDefaultConfig } = require('expo/metro-config'); const config = getDefaultConfig(__dirname); config.resolver.sourceExts.push('cjs'); module.exports = config;
处理TypeScript类型问题
确保@firebase/auth/react-native的版本与firebase主包版本完全一致(均为10.1.0),避免类型不匹配。若仍有类型报错,可清除TypeScript缓存:
npx tsc --clearCache
内容的提问来源于stack exchange,提问作者Keunwoo Park
相关产品推荐
相关产品推荐

