![](/img/trans.png)
[英]Google Cloud Functions Firebase Error The default Firebase app already exists
[英]Using Firebase Admin SDK, Unable to Deploy Firebase Cloud Functions Split Across Multiple Files: "The default Firebase app already exists"
當我嘗試在新的 Firebase 雲 function 中使用initializeApp()
時(組織在一個單獨的文件中,通過 index.ts 導出),我收到錯誤消息:“默認的 Firebase 應用程序已經存在”
我有三個文件,index.ts、http.ts 和 pubsub.ts。
指數.ts:
export { function1 } from './http'
export { function2 } from './pubsub'
http.ts(已經在使用 initializeApp 並且運行良好):
import * as functions from 'firebase-functions'
import fetch from 'node-fetch'
import { initializeApp } from 'firebase-admin/app'
import { getFirestore } from 'firebase-admin/firestore'
const app = initializeApp()
const db = getFirestore(app)
const config = functions.config()
export const function1 = functions...
我需要在另一個文件 pubsub.ts 中使用應用程序:
import * as functions from 'firebase-functions'
import { initializeApp } from 'firebase-admin/app'
import { getAuth } from 'firebase-admin/auth'
import { getFirestore } from 'firebase-admin/firestore'
const app = initializeApp()
const auth = getAuth(app)
const db = getFirestore(app)
export const function2 = functions...
我已經看到諸如.admin.apps?length. admin:initializeApp(). admin;app();
.admin.apps?length. admin:initializeApp(). admin;app();
但我使用的是最新版本的 Firebase Admin SDK 並且它的導入方式不同。
此外,我想一旦我設法解決了 initializeApp 的問題, db
也會出現同樣的情況——因為它也在兩者中使用。
我檢查了 Firebase 文檔,當雲功能被組織到單獨的文件中時,我沒有看到使用 Firebase Admin SDK 的提及(但是它確實討論了這樣的組織功能)。
提前致謝。
getApp() 和 getApps() 方法看起來很可靠,可以檢查您的應用是否已初始化: https://firebase.google.com/docs/reference/js/app.md#getapp並基於此執行條件初始化.
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.