在 Firebase Cloud Functions 中仅部署单个未导出的函数

Rba*_*bar 6 command-line node.js firebase google-cloud-functions

我在我的 firebase 云函数文件中创建了以下函数:

function whatsMyName(name) {
  return "your name is " + name
} 
Run Code Online (Sandbox Code Playgroud)

当我运行在命令行中输入以下,则该功能部署:

firebase deploy --only functions
Run Code Online (Sandbox Code Playgroud)

但是,这部署了我的所有功能。我只想部署该whatsMyName功能。通常,如果我有一个导出的函数,如下所示:

exports.someExportedFunction = functions.https.onRequest((req, res) => {
   // do some stuff
}
Run Code Online (Sandbox Code Playgroud)

然后我可以运行以下命令来部署导出的函数:

firebase deploy --only functions:someExportedFunction
Run Code Online (Sandbox Code Playgroud)

但是,当我运行以下命令时,未部署非导出函数:

firebase deploy --only functions:whatsMyName
Run Code Online (Sandbox Code Playgroud)

有谁明白为什么这不单独部署我的非导出函数whatsMyName,以及如何为 Firebase Cloud Functions 部署非导出函数?

Dou*_*son 4

CLI 只能单独部署导出的函数触发器。它不能专门部署任何任意 JavaScript 命名函数。

换句话说,您正在尝试做的事情目前是不可能的。