我遵循这个wiki页面中的代码:https://firebase.google.com/docs/functions/firestore-events,并已将以下代码部署到云功能:
const { initializeApp } = require('firebase-admin/app');
const { getFirestore } = require('firebase-admin/firestore');
const uuid = require('uuid');
const functions = require('firebase-functions');
initializeApp()
const db = getFirestore();
exports.newDoc = functions.firestore
.document('doc/{docId}')
.onCreate((snap, context) => {
console.log(context.params.docId);
console.log(snap.data());
db.collection('monitor').doc(uuid.v1()).set(snap.data()).then(_=>console.log('saved'));
});
当我通过Firestore控制台添加一个文档到我的"doc"集合时,它会添加一个文档到我的"monitor"集合。当我检查context.params。然而,docId的日志中有一行,但它完全是空的(没有内容)。我错过了什么?
我设法通过记录整个上下文来找到我的id:)它实际上是在params对象中,但作为context.params.pushId