删除因“部署错误:未定义”而失败的Firebase云函数`
如何删除使用删除因“部署错误:未定义”而失败的Firebase云函数`,firebase,firebase-realtime-database,google-cloud-functions,Firebase,Firebase Realtime Database,Google Cloud Functions,如何删除使用Deploy Error:undefined部署的Firebase云函数? 重现问题的步骤: 1) 创建新的Firebase项目 2) $firebase init和设置功能 3) 将以下代码粘贴到functions/index.js "use strict"; const functions = require('firebase-functions'); function aFunction() { return 'reports/posts'; } functio
Deploy Error:undefined
部署的Firebase云函数?
重现问题的步骤: 1) 创建新的Firebase项目 2)
$firebase init
和设置功能
3) 将以下代码粘贴到functions/index.js
"use strict";
const functions = require('firebase-functions');
function aFunction() {
return 'reports/posts';
}
function getCorruptTrigger() {
return '/reports/posts/' + aFunction +'/createdAt'
}
exports.thisFnWillFailToDeploy = functions
.database
.ref(getCorruptTrigger())
.onWrite(event => {});
4) firebase部署--仅功能
5) 该功能将无法按预期部署
我试图删除云函数的内容:
- 从
index.js中删除函数并部署不会删除函数,相反,我会得到
函数[thisFnWillFailToDeploy]:部署错误:未定义
- 在谷歌云控制台中删除云函数不会删除该函数。(我得到一个祝酒词,说函数将被删除,但事实并非如此。在日志中有一个关于
)“status”的错误:{“code”:13}
- 创建名为thisfn的空云函数将无法部署也会导致部署错误:未定义
- 项目中的功能处于不良状态。显然,部署一个ref格式错误的函数会导致该函数出现问题,而这些问题是您自己无法逆转的。该功能从一开始就无法部署(甚至还没有机会删除它)。在此之后,您不能再更新或删除该函数。如果您需要恢复功能,您必须联系技术支持。您应该仍然能够更新或删除该项目中的其他功能
我猜这是因为你的函数调用中有一个错误,生成了ref的名称。你在调用函数时缺少了paren。我想你是想让它看起来像这样:
function getCorruptTrigger() {
return '/reports/posts/' + aFunction() +'/createdAt'
}
如果您将其部署到新项目中,它应该可以工作。如果您在项目中发现无法解释的错误,请联系故障排除支持。他们是帮助你的最佳装备。如果没有人知道解决方案,我会写一份bug报告。不想浪费宝贵的支持票;)我怀疑您的项目中存在的问题不仅仅是一些bug或错误。请用一个新项目再试一次,以确定答案。事实上,我做到了。我在项目中遇到了这个问题。上面提到的步骤就是我如何在一个全新的项目中重现同样的情况。(由于我对谷歌云控制台和Firebase云功能缺乏经验,我不确定自己是否遗漏了什么。这就是我首先在这里提交问题的原因)我复制了你的代码(添加缺少的括号和分号),并成功部署了它,你能解决它吗?谢谢你的回答!缺失的偏执是故意的。该示例的要点是创建一种无法删除使用错误触发器路径/ref部署的函数的情况。我只是没想到你只能通过联系支持人员或创建一个新项目来纠正这些错误!