要删除Firestore中的文档,您可以使用AngularFirestoreCollection的remove()方法。请参考以下代码示例:
import { Component } from '@angular/core';
import { AngularFirestore, AngularFirestoreCollection } from '@angular/fire/firestore';
import { Observable } from 'rxjs';
interface Item {
name: string;
description: string;
}
@Component({
selector: 'app-items',
template: `
-
{{ item.name }} - {{ item.description }}
`,
})
export class ItemsComponent {
private itemsCollection: AngularFirestoreCollection- ;
items: Observable
- ;
constructor(private afs: AngularFirestore) {
this.itemsCollection = afs.collection
- ('items');
this.items = this.itemsCollection.valueChanges();
}
deleteItem(itemId: string) {
this.itemsCollection.doc(itemId).delete()
.catch(error => console.log(error));
}
}
在上面的示例中,我们首先使用AngularFirestoreCollection创建一个名为itemsCollection的集合。然后,我们使用valueChanges()方法订阅了这个集合,并将结果赋值给items变量,以便在模板中使用。
在模板中,我们通过*ngFor指令循环遍历items数组,并显示每个项的名称和描述。每个项后面都有一个Delete按钮,点击按钮时会调用deleteItem()方法。
deleteItem()方法接收一个itemId参数,该参数表示要删除的文档的ID。我们使用itemsCollection.doc(itemId)获取对文档的引用,并调用delete()方法来删除文档。
如果删除操作失败,我们可以通过.catch()方法捕获并处理错误。
请确保您已正确设置Firestore和Firebase项目,并在AngularFirestoreModule中导入AngularFirestore。