问题描述
我正在尝试根据从“firebase-admin”返回的“apps”属性来决定是否需要不调用 initializeApp()。第一次尝试时它按预期工作,但后来无论我尝试多少次都开始出现此错误。
错误:
uncaughtException FirebaseAppError:默认的 Firebase 应用已经 存在。这意味着您多次调用 initializeApp() 而没有 提供应用程序名称作为第二个参数。在大多数情况下,您只 需要调用 initializeApp() 一次。但是如果你确实想初始化 多个应用程序,将第二个参数传递给 initializeApp() 以给出每个 应用的唯一名称。
代码:
import * as firebase from 'firebase-admin';
console.log(firebase); // add this on second try
if (!firebase.apps.length) {
firebase.initializeApp({
credential: firebase.credential.cert(some config here),databaseURL: 'some url here',});
}
当我看到控制台时,输出如下:
FirebaseNamespace {
__esModule: true,credential: {
cert: [Function],refreshToken: [Function],applicationDefault: [Function]
},SDK_VERSION: '9.5.0',Promise: [Function: Promise],INTERNAL: FirebaseNamespaceInternals { firebase_: [Circular],apps_: {} },default: [Circular]
}
没有像“应用程序”这样的属性。有谁知道为什么这个属性不存在?
更新:
检查代码后,我发现另一个地方写了完全相同的逻辑。这个逻辑运行了第二次,所以第二次出现这个错误。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)