我有一個集合,其中包含幾個檔案,這些檔案都包含一個 id-field 個體。但我不知道如何根據我的查詢洗掉特定檔案。我試過這個:
const deleteItem = async(item) => {
const d = query(collection(db, 'allTasks'), where('id', '==', item.id));
const docSnap = await getDocs(d);
docSnap.forEach((doc) => {
console.log(doc.data())
deleteDoc(doc.data());
});
}
但我收到錯誤:[未處理的承諾拒絕:TypeError:t 不是物件。(評估 '"_delegate" in t')]
這是錯誤的方式還是我應該使用批處理?console.log 顯示了我單擊洗掉的正確專案
uj5u.com熱心網友回復:
該deleteDoc()函式將DocumentReference作為引數,而不是檔案資料。
docSnap.forEach((doc) => {
deleteDoc(doc.ref); // and not doc.data()
});
此外,使用批處理洗掉檔案以確保它們全部被洗掉或沒有檔案可能是一個好主意。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/470982.html
標籤:javascript 火力基地 谷歌云火库
上一篇:在內部訪問代理屬性
