数据库结构如下:
User {id}
Settings (Collection)
device_uids(document)
{device_uid_1}: Boolean
(...)
{device_uid_n}: Boolean
我想获取该文档并访问该文档中的所有device_uid。
我尝试过这样,但是控制台记录未定义forEach
:
const settings_ref = admin.firestore().collection('User').doc(uid).collection('Settings').doc('device_uids');
settings_ref.get()
.then(snap =>{
let uids = snap.data();
uids.array.forEach(element => {
let device = element.key;
if(device != device_uid){
//GO ON
}
});
})
如何分别访问值?
答案 0 :(得分:1)
您的文档中没有名为array
的字段,因此uids.array
将始终是未定义的。如果只想迭代文档的所有属性,就像迭代普通的旧JavaScript对象的所有属性一样:
const data = snap.data();
for (const key in data) {
const value = data[key];
// now key and value are the property name and value
}