Firebase 9 JS通过查询删除指定文档报错,求排查问题原因
Firestore删除文档报错的解决方法
你的代码出错原因很明确:deleteDoc方法需要传入文档引用(DocumentReference),但你直接传了QueryDocumentSnapshot对象。
修正后的代码如下:
const colRef = collection(firestore, 'albums') const q = query(colRef, where('name', '==', props.album.name)) const querySnapshot = await getDocs(q) querySnapshot.forEach(doc => { deleteDoc(doc.ref) })
forEach循环里的doc是包含文档数据和元信息的快照实例,要执行删除操作,必须通过doc.ref获取对应的文档引用。之前直接传递doc对象,Firestore内部无法识别所需的结构,因此抛出了类型错误。
内容的提问来源于stack exchange,提问作者DuchSuvaa
相关产品推荐
相关产品推荐

