【发布时间】:2019-03-18 22:50:26
【问题描述】:
当我想从实时数据库更新 Cloud Firestore 时,我部署了以下代码,但出现错误。
const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp(functions.config().firebase);
const firestore = functions.firestore;
exports.onUserStatusChange = functions.database
.ref('/status/{userId}')
.onUpdate(event => {
var db = admin.firestore();
//const usersRef = firestore.document('/users/' + event.params.userId);
const usersRef = db.collection("users");
var snapShot = event.data;
return event.data.ref.once('value')
.then(statusSnap => snapShot.val())
.then(status => {
if (status === 'offline'){
usersRef
.doc(event.params.userId)
.set({
online: false,
last_active: Date.now()
}, {merge: true});
}
})
});
TypeError: 无法读取未定义的属性 'ref' 在exports.onUserStatusChange.functions.database.ref.onUpdate.event (/user_code/index.js:18:20) 在 cloudFunctionNewSignature (/user_code/node_modules/firebase-functions/lib/cloud-functions.js:105:23) 在 cloudFunction (/user_code/node_modules/firebase-functions/lib/cloud-functions.js:135:20) 在 /var/tmp/worker/worker.js:733:24 在 process._tickDomainCallback (internal/process/next_tick.js:135:7)
【问题讨论】:
标签: javascript firebase firebase-realtime-database google-cloud-functions