我正在开发一个Vue、Firebase应用程序,将用户事件保存在Firebase集合中,当用户安排事件时,我会更新这个userevents数组,并在用户取消或删除事件时将其删除。
users(collection) -
test123(document) -
"id" . --fields
"username" . --fields
"userevents" . --array
[0]
"eventid"
"date"
"desc"
"status"
[1]
"eventid"
"date"
"desc"
"status"
从用户界面(UI)来看,如果用户取消一个事件,我将拥有该事件的ID并希望从userevents数组中删除它。 我尝试使用以下代码从数组中删除项目,但它会删除所有userevents的项目,
userRef.update({
eventid: firebase.firestore.FieldValue.delete()
});
在 Firebase 中有实现这个的方法吗?
"userevents.${eventid}": firebase.firestore.FieldValue.delete() }); ```
- AnnetteuserRef.update({ ['userevents.' + eventid]: firebase.firestore.FieldValue.delete() });
我也会更新答案。 - clkdouble
类型,那么FieldValue.arrayRemove
必须匹配到最后一位精度的整个double
值,这很麻烦。我要求按索引删除。 - iCantCFirebaseFirestore.FieldValue.arrayRemove({});
。 - Paul