我需要在每个 Cloud Function 模块文件的顶部调用 admin.initializeApp 吗?

Do I need to call admin.initializeApp at the top of each Cloud Function module file?

我的 Firebase Cloud Functions index.js 已经达到我想要开始将代码文件拆分为多个模块文件的大小。

但是我不清楚是否需要在每个 module/file 的顶部调用这一行,它将访问 Firebase 数据库。

admin.initializeApp(functions.config().firebase);

如果这真的很明显,请原谅。我不是经验丰富的 Node.js 用户。

对于想要使用 Firebase Admin SDK 的所有模块中的所有代码,您需要有一个可用的已初始化 admin 对象。为了初始化 Admin SDK,您需要一个来自以下行的 functions 对象:

const functions = require('firebase-functions');

因此,您可以在所有模块文件的顶部执行此操作:

const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp();

这将为您提供一个已初始化的管理对象,供您在该文件中定义的函数中使用。您可以随意命名这些对象。

或者,您可以想出另一种方法将单个管理对象添加到您的代码中,但您没有义务这样做。完全由您决定。