Google有一个为Cloud Firestore创建触发器的示例:https://cloud.google.com/functions/docs/calling/cloud-firestore
/**
* Background Function triggered by a change to a Firestore document.
*
* @param {!Object} event The Cloud Functions event.
* @param {!Object} context Cloud Functions event metadata.
*/
exports.helloFirestore = (event, context) => {
const triggerResource = context.resource;
console.log(`Function triggered by event on: ${triggerResource}`);
console.log(`Event type: ${context.eventType}`);
if (event.oldValue && Object.keys(event.oldValue).length) {
console.log('\nOld value:');
console.log(JSON.stringify(event.oldValue, null, 2));
}
if (event.value && Object.keys(event.value).length) {
console.log('\nNew value:');
console.log(JSON.stringify(event.value, null, 2));
}
};
他们只在纯JavaScript中提供了这个示例,而不是TypeScript。
如果使用TypeScript,event
和context
对象的类型是什么?哪个包包含它们?
此问题专门针对可使用gcloud
部署的触发器,而不是Firebase触发器。
1条答案
按热度按时间gpfsuwkq1#
正如在documentation中提到的,对于第一代函数,使用NodeJS的后台函数,对于第二代函数,使用CloudEvent函数。
event
的内容可能会根据触发器的不同而不同。Firebase的文档确实解释了Event和EventContext是什么,但我在Google Cloud文档中找不到相同的内容。