[英]delete collection firebase in v9
有人可以解釋如何使用 reactjs 使用 v9 刪除 firebase/firestore 中的集合
firestore()
.collection('rate')
.get()
.then((querySnapshot) => {
querySnapshot.forEach((doc) => {
doc.ref.delete();
});
我在 v8 中使用的這段代碼我在 v9 中需要同樣的東西
const q = query(collection(db, `${udata.id}`));
const querySnapshot = await getDocs(q);
querySnapshot.forEach((doc) => {
// doc.data() is never undefined for query doc snapshots
console.log(doc.data());
});
已經試過了,但這段代碼只讀取數據,這不能讓我刪除,所以有人可以告訴我怎么做
您可以使用deleteDoc()
,如此處所述。
deleteDoc()
接受文檔引用,因此您需要從 forEach 內部傳遞引用。 在 forEach 中,您將收到一個 QueryDocumentSnapshot,因此您只需要添加一個
deleteDoc(doc.ref);
在使用 Modular SDK 時,有一個頂級函數deleteDoc()
來刪除文檔:
import { collection, query, getDocs, deleteDoc } from 'firebase/firestore';
const q = query(collection(db, `${udata.id}`));
const querySnapshot = await getDocs(q);
const deleteOps = [];
querySnapshot.forEach((doc) => {
deleteOps.push(deleteDoc(doc.ref));
});
Promise.all(deleteOps).then(() => console.log('documents deleted'))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.