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

Chr*_*her 4 node.js firebase google-cloud-functions

我的Firebase的Cloud函数index.js达到了我想开始将代码文件拆分为多个模块文件的大小.

但是,我不清楚是否需要在每个将访问Firebase数据库的模块/文件的顶部调用此行.

admin.initializeApp(functions.config().firebase);
Run Code Online (Sandbox Code Playgroud)

如果这是非常明显的,请原谅.我不是一个经验丰富的Node.js用户.

Dou*_*son 6

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

const functions = require('firebase-functions');
Run Code Online (Sandbox Code Playgroud)

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

const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp();
Run Code Online (Sandbox Code Playgroud)

这将提供一个初始化的管理对象,供您在该文件中定义的函数中使用.您可以根据需要调用对象.

或者,您可以找到将单个管理对象放入代码的另一种方法,但您没有义务这样做.这完全取决于你.