升级到Firebase js SDK V8后,在'Firebase'中找不到导出Firestore'(作为Firebase;导入) [英] export 'firestore' (imported as 'firebase') was not found in 'firebase' after upgrading to firebase js sdk v8

查看:0
本文介绍了升级到Firebase js SDK V8后,在'Firebase'中找不到导出Firestore'(作为Firebase;导入)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经将Firebase JS SDK从v7升级到v8.0.0,我正在像这样导入Firebase。

import * as firebase from 'firebase';

访问下列任何内容都会导致下面的错误。

firebase.firestore.FieldValue.serverTimestamp()
firebase.User
firebase.auth.UserCredential
在中找不到导出‘Firestore’(导入为‘Firebase’) "火力基地" 类型‘typeof’上不存在属性‘Firestore’ Import(";appPath/node_modules/firebase/index";)‘

我找到了一种解决方法,可以将Firebase更改为Firebase。默认设置例如

firebase.default.firestore.FieldValue.serverTimestamp()

这是解决此问题的正确方法吗?

编辑:我也在项目中使用AngularFire。 我尝试使用:

import firebase from 'firebase/app';
import 'firebase/firestore';
export const firestore = firebase.firestore();

但这给了我以下错误:

未捕获Firebase错误:Firebase:没有Firebase应用程序‘[Default]’ 已创建-调用Firebase App.InitializeApp()(app/no-app)。

推荐答案

我在更新到角度11时遇到了同样的问题。我尝试了修复程序来安装Firebase管理库,并遵循this thread的说明,但这不应该在浏览器中运行,并导致了一些其他问题,所以我放弃了它。

我从AngularFire的release notes中注意到,最新版本不支持JS SDK的旧版本,这就是该函数的来源,因此我删除了node_MODULES,也就是Package-lock.json文件,并运行NPM缓存清理--强制,然后运行NPM Install以干净运行。这没什么用处,但我觉得自己很有成就感。

然后我遇到了this thread,它解释了我的问题,并通过将库从

更改为编译

‘将*作为Firebase从’Firebase/app‘导入;

从‘Firebase/app’导入Firebase;

这删除了";找不到FireStore&的错误,并且它已正确编译。使用原始代码:

获取Firebase Timestamp(){ 返回firebase.firestore.FieldValue.serverTimestamp(); )

希望这能有所帮助--这是一个粘性错误。

这篇关于升级到Firebase js SDK V8后,在'Firebase'中找不到导出Firestore'(作为Firebase;导入)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆