簡體   English   中英

如何使用查詢從 Firebase 9 js 中刪除文檔?

[英]How do I delete a document from Firebase 9 js using a query?

我想從“相冊”集合中刪除一個文檔,但只刪除名稱屬性與 props.album.name 匹配的文檔。 我希望這段代碼能夠工作:

  const colRef = collection(firestore, 'albums')
  const q = query(colRef, where('name', '==', props.album.name))
  const querySnapshot = await getDocs(q)
  querySnapshot.forEach(doc => {
    deleteDoc(doc)
  })

但我得到一個錯誤:

未捕獲(承諾)TypeError:“in”的右側應該是 object,未定義

我究竟做錯了什么?

由於您正在遍歷QuerySnapshot每個doc object 是一個QueryDocumentSnapshot ,而deleteDoc需要一個DocumentReference 要從前者轉到后者,您可以在快照上調用.ref

所以:

querySnapshot.forEach(doc => {
  deleteDoc(doc.ref)
})

暫無
暫無

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

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