You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Expo项目中TypeScript导入Firebase/auth模块找不到getAuth成员如何解决

问题根因

  • 2021年8月Firebase v9刚正式发布,当时expo install firebase默认适配安装的仍然是Firebase v8.x稳定版,而你参考的是v9版本的模块化API文档,v8版本的SDK完全没有getAuth这类模块化导出,自然会抛出找不到导出成员的错误,同时类型定义会指向空声明文件。
  • 若你手动安装了Firebase v9仍出现该问题,是因为旧版本expo的tsconfig基础配置默认的moduleResolution为node,无法正确识别Firebase v9的ESM风格包导出结构。

解决方案

方案1:沿用当前安装的Firebase v8版本

将导入语句替换为v8版本的写法即可正常使用:

import firebase from 'firebase/app';
import 'firebase/auth';

// 调用示例
const auth = firebase.auth();
firebase.auth().createUserWithEmailAndPassword(email, password);

方案2:升级使用Firebase v9版本

  1. 先卸载现有firebase,安装v9版本包:
npm uninstall firebase
npm install firebase@9.x
  1. 修改tsconfig.json配置,新增moduleResolution字段:
{
  "extends": "expo/tsconfig.base",
  "compilerOptions": {
    "strict": true,
    "moduleResolution": "NodeNext"
  }
}
  1. 重启VS Code的TypeScript语言服务,报错即可消失。

内容的提问来源于stack exchange,提问作者Dan B.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 15:27:00