我在这里有此代码,我想删除数组“ Answered”内的某些值。有没有一种简单的方法来访问数组中的第一个值?这是正确的,但是显示了我要发生的事情“ Answered [0]” <-我想获取该数组中的第一个值并将其删除。预先谢谢你
let uid = Auth.auth().currentUser?.uid
print(self.randomArray)
let wash = db.collection("users").document(uid!)
wash.updateData([
"Answered": FieldValue.arrayUnion([self.randomArray])
])
}
if(self.check.isEmpty != true){
self.whichQuestion = self.check[0]
self.whichQuestionString = String(self.whichQuestion)
db.collection("users").document(uid!).updateData([
"Answered": FieldValue.delete(),
]) { err in
if let err = err {
print("Error updating document: \(err)")
} else {
print("Document successfully updated")
}
}
答案 0 :(得分:1)
但是,如果您的数组包含唯一值,则可以remove the item使用:
self.whichQuestionString = String(self.whichQuestion)
db.collection("users").document(uid!).updateData([
"regions": FieldValue.arrayRemove([whichQuestionString])
])
如果仅知道项目的索引,则无法在不了解整个数组的情况下将其删除。
此方法的秘诀是:
另请参阅(不幸的是,其中没有一个是针对Swift的):