【发布时间】:2019-08-26 09:49:59
【问题描述】:
我有一个这样的模型
{
"actions": [
{
"type": "1",
"value": {
"abc": {
"1": "true"
},
"def": {
"1": "true"
}
}
}
]
}
我想删除 abc 字段
这是我正在使用的代码,但它对我不起作用(我也在使用批量写入来更新多个文档)。
// getScene's data received from firestore
let batch = this.firebase.firestore().batch();
getScene.forEach(o => {
let removeDeviceFromScene = this.sceneDoc.doc(o.id);
const fieldPath = `actions.value.abc`;
batch.update(removeDeviceFromScene, {
filePath: this.firebase.firestore.FieldValue.delete()
}
}); await batch.commit().then(() => {
console.log(`Begin write batch`);
});
我也试过这样,但结果一样
let update = {};
let removeDeviceFromScene = this.sceneDoc.doc(o.id);
update["actions.value.abc"] = this.firebase.firestore.FieldValue.delete();
batch.update(removeDeviceFromScene, update);
我的代码有问题吗,有解决这个问题的办法吗?
提前致谢
【问题讨论】:
-
无法更新数组中的单个元素。见stackoverflow.com/questions/51202300/…
标签: typescript firebase google-cloud-firestore