尝试导入错误:“app”未从“firebase/app”导出(导入为“firebase”)

Posted

技术标签:

【中文标题】尝试导入错误:“app”未从“firebase/app”导出(导入为“firebase”)【英文标题】:Attempted import error: 'app' is not exported from 'firebase/app' (imported as 'firebase') 【发布时间】:2021-02-13 12:10:07 【问题描述】:

遇到了一个很奇怪的问题。尝试导入 firebase 时,出现以下错误:

./node_modules/firebaseui/dist/esm.js
Attempted import error: 'app' is not exported from 'firebase/app' (imported as 'firebase').

我的项目的结构是:一个包含反应客户端文件夹的父文件夹。我在父文件夹中安装了firebase,在父文件夹的firebaseConfig文件中初始化了一个firebase app,然后导入到react client文件夹中。

我后来尝试在 react 客户端文件夹中安装 firebase 并在其中导入 firebase。奇怪的是,在我在客户端文件夹中安装了 firebase 之后,在客户端文件夹中执行“npm ls firebase”返回空,即使 firebase 确实在节点模块中并且 package.json 在客户端文件夹中。我想知道是什么导致了这个问题。

父文件夹中的firebaseConfig.js

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

const firebaseConfig = 
    ......
;

firebase.initializeApp(firebaseConfig);

export default firebase;

【问题讨论】:

【参考方案1】:

不幸的是,您已将“firebase”依赖项升级到 8.0.0,但“firebaseui”依赖项尚不支持它。在 firebaseui 支持 breaking changes in 8.0.0 之前,您必须暂时将 firebase 降级到版本 7.24.0。

【讨论】:

firebase 必须支持更新版本,因为它可能会引起初学者的困惑。但我的错误仍然存​​在 firebaseui 最终将更新为支持 8.0.0。它总是落后,因为它是由不同的人维护的。 先生,我收到一个错误,即 ./node_modules/firebaseui/dist/esm.js 尝试导入错误:“app”未从“firebase/app”导出(导入为“firebase”)。 @我无法解决它已经尝试了很多事情。如果我打开一个问题,你能回答那个问题,因为我必须完成 olx 克隆 先生,我应该在更改降级 firebase 版本后在我的项目中运行 npm i 命令,但这并不能解决我的问题【参考方案2】:

这是一个更新问题,虽然您可以修复导入 firebase 的方式,但无法修复在您使用的库中导入它的方式,您必须等待这些库更新。

8.0.0 之前

import * as firebase from 'firebase/app'

8.0.0 之后

import firebase from 'firebase/app'

库之类的 FirebaseUI 身份验证

【讨论】:

感谢您。我是菜鸟,这个答案解决了我的问题。【参考方案3】:

我使用的 Firebase 版本 Firebase>8.0.0 我使用的代码行 import * as firebase from 'firebase/app'; 此导入适用于 Firebase请使用此 import firebase from 'firebase/app'; 如果您现在(2021 年 8 月 4 日)使用的是 firebase>8.0.0,那么以后的版本可能会发生变化。 这是因为你使用了错误的代码行,系统没有问题。去检查你项目文件夹中的package.json文件。

在这里查看 package.json

Checking firebase version on package.json file

【讨论】:

【参考方案4】:

我安装firebase时,默认安装的是9.0.0版本。我看到了上述错误,但是当我将其更改为 8.9.1 并按如下方式导入时,它对我有用。

从'firebase/app'导入firebase

【讨论】:

【参考方案5】:

首先确定您的 Firebase 版本:

firebase --version

如果您使用的是版本 9,请替换此行

import firebase from "firebase/app"

import firebase from 'firebase/compat/app'

参考: https://exerror.com/attempted-import-error-firebase-app-does-not-contain-a-default-export-imported-as-firebase/

【讨论】:

以上是关于尝试导入错误:“app”未从“firebase/app”导出(导入为“firebase”)的主要内容,如果未能解决你的问题,请参考以下文章

./src/App.js 尝试导入错误:“Switch”未从“react-router-dom”导出

react-icons/fa 安装失败:尝试导入错误:“FaStar”未从“react-icons/fa”导出

尝试导入错误:“initializeApp”未从“firebase”导出(导入为“firebase”)[关闭]

为啥我会收到“尝试导入错误:'EffectCards' 未从 'swiper' 导出”?

尝试导入错误:“useRouteMatch”未从“react-router-dom”导出

尝试导入错误:“createGlobalStyle”未从“样式组件”导出