firebase 仅部署功能无法识别我的任何功能

firebase deploy only function not recognizing any of my functions

我正在尝试使用以下命令在调试时部署单个云函数:

$ firebase deploy --only functions:trig-users-onUserUpdate

但是我得到这个错误:

i  functions: current functions in project: trig-auth-createAuthUser(us-central1), trig-auth-onDeleteUser(us-central1), trig-users-onUserUpdate(us-central1)
⚠  functions: the following filters were specified but do not match any functions in the project: trig-users-onUserUpdate

当我部署所有功能时,我在列表中看到它:

✔  functions[trig-users-onUserUpdate(us-central1)]: Successful update operation. 

我尝试添加 (us-central1) 但出现此错误:

bash: syntax error near unexpected token `('

知道我做错了什么吗?

实际上这似乎不是错误,而是警告。当您尝试部署功能并且 firebase 无法找到您在过滤器中提到的功能的代码时,它就会出现。前任。我部署了一个函数 (postCache) 并在我的环境中尝试了完全相同的命令(没有任何代码)我得到以下输出:

i  deploying functions
i  functions: ensuring necessary APIs are enabled...
✔  functions: all necessary APIs are enabled
i  functions: preparing functions directory for uploading...
i  functions: current functions in project: postCache(us-central1)
⚠  functions: the following filters were specified but do not match any functions in the project: trig-users-onUserUpdate
✔  scheduler: all necessary APIs are enabled
✔  Deploy complete!

这意味着您已经部署了该名称的函数,但命令无法找到要部署的新代码。

我会检查您的代码中的函数名称是否没有拼写错误,或者您是否 运行 来自正确目录的命令。

希望对您有所帮助!

导入的 modules/directories 似乎有问题。

就我而言,我的 index.js 结构如下:

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

const users = require('./triggers/users')
const posts = require('./triggers/posts')
const triggers = {
    users,
    posts
}

exports.trig = triggers

要使其正常工作,请将 firebase 在名称中添加的 - 替换为 .,这样就可以正常工作:

// WRONG
$ firebase deploy --only functions:trig-users-onUserUpdate
// RIGHT
$ firebase deploy --only functions:trig.users.onUserUpdate

在此处查看与团队的讨论:github polish