簡體   English   中英

使用 arrayRemove() 從 firestore 9 數組中刪除 object?

[英]removing an object from firestore 9 array using arrayRemove()?

我正在嘗試從 firestore 中的數組中刪除一個 object,但遇到障礙進行刪除的要求或參考是什么? object 中的一個鍵值是否足以刪除,或者 object 是否應該與被刪除的鍵值相同?

 const deleteWeek = async () => { const docRef = doc(db, 'Weeks', id); await updateDoc(docRef, { weeks: arrayRemove({ weekId: '7518005f-7b10-44b6-8e0a-5e41081ee064', }), }); }; deleteWeek(); }

然而數據庫中的一周看起來像這樣

 {name,"Week 2" days: [/*data all kinds*/] weekId: "7518005f-7b10-44b6-8e0a-5e41081ee064"}

如果它是 object 的數組,那么您需要知道整個 object 才能使用arrayRemove()例如,如果文檔如下所示:

{
  ...data
  weeks: [
    { 
      name: "Week 2",
      days: [/*data all kinds*/]
      weekId: "7518005f-7b10-44b6-8e0a-5e41081ee064"}
    }
  ]
}

您必須在arrayRemove()中傳遞整個星期 object。 最好將此類數據存儲在子集合中,這樣您就可以查詢/刪除特定的數據。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM