Javascript Firebase云函数onCreate未运行?
我一直在遵循一个教程()并试图让.onCreate开始工作,但什么也没发生 我试图复制的代码是在19:30左右的视频中,下面是我得到的:Javascript Firebase云函数onCreate未运行?,javascript,firebase,google-cloud-firestore,google-cloud-functions,Javascript,Firebase,Google Cloud Firestore,Google Cloud Functions,我一直在遵循一个教程()并试图让.onCreate开始工作,但什么也没发生 我试图复制的代码是在19:30左右的视频中,下面是我得到的: exports.createinvite = functions.firestore .document('referrals/{referralid}') .onCreate(event => { console.log('asfasdfasdf') const docid = event.params.referra
exports.createinvite = functions.firestore
.document('referrals/{referralid}')
.onCreate(event => {
console.log('asfasdfasdf')
const docid = event.params.referralid;
const code = event.data.data().thing;
const referralref = admin.filestore().collection('referrals').doc(docid)
return referralref.update({message: `asfasfasdfa`})
});
非常感谢您的帮助:)您正在学习一个非常古老的教程,我建议您停止学习它,从一些更新的教程中学习,例如。API已经改变了 还请按照下面的步骤学习onCreate函数今天的样子。它们包含两个参数,一个快照和一个上下文:
exports.createinvite = functions.firestore
.document('referrals/{referralid}')
.onCreate((snapshot, context) => { ... })
模式中的通配符可在
context.params
中找到。您将使用context.params.referralid
来获取通配符的值。如果查看的文档,您将看到onCreate
是通过两个参数调用的:snapshot
和context
。params
属性存在于第二个参数上,而不是第一个参数上
因此:
如果教程中的某些内容不起作用,我强烈建议查看文档,因为该产品可能在创建教程后已更新。您是如何触发该功能的?另外:您的函数是否被调用(您可以在日志输出中看到这一点),或者甚至没有被调用?现在我只是手动将文档添加到集合中。对不起,记录输出是什么意思?我对所有这些都不熟悉。它显示了最近云函数的调用和输出。它说函数正在运行,错误是:TypeError:无法读取exports.createinvite.Functions.firestore.document.onCreate.eventTrue处未定义的属性“referralid”。我总是遵循文档。这是一套记录最完整的产品。
exports.createinvite = functions.firestore
.document('referrals/{referralid}')
.onCreate((snapshot, context) => {
console.log('asfasdfasdf')
const docid = context.params.referralid;
const code = snapshot.data().thing;
...