首页 > 解决方案 > 从 Angular Web 应用程序中的 firebase 实时数据库中删除项目

问题描述

所以我一直在做这个项目,我试图从 firebase 的实时数据库中删除一个特定的对象/项目。但问题是,一旦我单击删除特定项目,整个对象/项目列表就会从 firebase 中删除。

基本上我有我的服务文件,其中包含删除方法。

DeleteItem(item: Item) {
    Return this itemRef.remove(item.$id);
}

在 item.component.ts 我有:


RemoveItem(item: Item) {
    This.itemService.deleteItem(item );
}

在 html.component 中,我使用 ngfor 显示来自 firebase 的所有项目,并带有一个用于删除特定项目的按钮以及一个用于更新实际工作的项目的按钮。

目前,我正在使用 angularFireDatabase 和 angularFireModule (@angular/fire/database)。ItemRef 是路径。

我还在 item.component.ts 中尝试了以下操作:(但它没有用)

RemoveItem(item: Item) {
    This.itemService.deleteItem(item).then(res => {
    This.items = this.items.filter(t => t.$id === item.$id);
    });
}

我还尝试了!== 代替 ===,因为这是消息来源所说的。

任何帮助将不胜感激。先感谢您。

更多关于我到目前为止所尝试的更新。

DeleteItem(item: Item) {
    // let ids = `/item/ + {item.$id}`;
    // return this.itemRef.remove(task);
    // return this.itemRef.remove(`/users/{item.$id}`);
    // return this.itemRef.remove(task.$id);
    // return this.db.list('/item/' + item.$id).remove();
    // let id = null;
    // return this.itemRef.update(item.$id, id);
    return this.db.list('/item/').update(item.$id, null);
    // this.taskRef.update({item: null});
  }

但他们都没有工作。我一直在寻找 npm 以获取有关 @angular/fire/database 的任何信息,但无法比 @angular/fire 更进一步

标签: angulartypescriptfirebasefirebase-realtime-database

解决方案


推荐阅读