升级到Firebase js SDK V8后,在';Firebase';中找不到导出Firestore';(作为Firebase;导入) [英] export 'firestore' (imported as 'firebase') was not found in 'firebase' after upgrading to firebase js sdk v8
本文介绍了升级到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屋!
查看全文