相关疑难解决方法(0)

使用动态密钥从Firestore中删除字段

我试图从Firestore中的Document中删除单个字段该字段的键保存在变量中,例如

var userId = "random-id-1"
Run Code Online (Sandbox Code Playgroud)

在文档中,我有一个像这样结构的成员领域:

{
  members:{
    random-id-1:true,
    random-id-2:true
  }
}
Run Code Online (Sandbox Code Playgroud)

我想删除random-id-1:true,但保持random-id-2:true

如果没有获得整个成员对象并编写更新的对象,这怎么可能?

我试过这个,但是我得到了错误:Document references must have an even number of segments

我也试过这个:

db.collection('groups').doc(this.props.groupId).set({
  members: {
    [userId]: firebase.firestore.FieldValue.delete()
  }
},{merge: true})
Run Code Online (Sandbox Code Playgroud)

但是我得到错误: Function DocumentReference.update() called with invalid data. FieldValue.delete() can only appear at the top level of your update data

谢谢你的帮助

javascript firebase google-cloud-firestore

13
推荐指数
2
解决办法
3975
查看次数