我在具有以下JSON嵌套结构的路径上设置了Firebase云函数观察器:
$myUID: {
places : {
$placeID: {
$myUID_checkedIn = "false"; [line4]
$someoneElseUID_checkedIn = "true";
},
}
}
设置观察者以观察:
exports.observePlaces = functions.database.ref('users/{userID}/places/{placeID}').onWrite((change,context)
我想从[line4]中的JSON结构中检索动态键“ $ myUID_checkedIn”的值。
我尝试使用以下内容:
const uid = context.params.userID; //VALID
const dataSnapshot = change.after.val(); //VALID
const isCheckedIn = dataSnapshot.(`${uid}_checkedIn`); //INVALID [line11]
但是,我无法使用这种方法在[line11]中检索动态键的值。
鉴于我的数据结构方式,这是否有可能实现?
如果是这样,我应该如何检索该值?
答案 0 :(得分:0)
当属性名称不是文字标识符时,您需要使用JavaScript正确索引属性名称。方括号用于此目的:
const isCheckedIn = datasnapShot[`${uid}_checkedIn`]