首页 > 解决方案 > 如何使用 Swift 删除 FireStore 数组中的嵌套值?

问题描述

我的数据看起来像这样

"countries": [
  0: [name: "USA", capital: "Washington"],
  1: [name: "Canada", capital: "Ottawa"]
]

如果我想删除countrieswhere the capitalis "Ottawa",我该怎么做?

我试过了

currentDocument.updateData([
  "countries": FieldValue.arrayRemove("Ottawa")
]) { err in
  if let err = err {
    print("Error updating document: \(err)")
  } else {
    print("Document successfully updated")
  }
}

但这只会删除整个数组。即使我尝试针对特定国家/地区("countries.1.name": FieldValue.arrayRemove("Ottawa"))它也不起作用,只是再次删除整个数组。

我究竟做错了什么?

标签: iosswiftfirebasegoogle-cloud-firestore

解决方案


推荐阅读