我遍历所有用户节点,我只想向文档中具有shop值的用户发送通知,如果文档中有不具有此属性的用户,我不想向他们发送通知
exports.rememberToOpenStore = functions.pubsub.schedule('30 09 * * *').onRun(async (context) => {
var db = admin.firestore();
let snap = await db.collection('user').get();
return snap.forEach((doc) => {
if(doc.data().shop !== null){
const deviceToken = doc.data().deviceToken
const payload = {
notification: {
title: "Good morning ! 🌅😊",
body: "Remember to open your store."
}
}
return admin.messaging().sendToDevice(deviceToken,payload)
}
return null;
});
});
我想知道这个
if(doc.data().shop !== null)
将知道哪个用户具有或不具有属性
有没有更好的方法可以用之类的where查询来实现这一点
let snap = await db.collection('user').where("shop" "!=", null).get();
只是为了让用户在文档中拥有商店价值?
我想用这种方式保存读取
if(doc.data().shop !== null)
如果商店是未定义的,那么您的代码就不会发现问题。
你可以做一些类似的事情
if(typeof doc.data().shop === 'string') // or whatever the type is, like boolean or number.
那你就可以肯定那家店有价值了。