You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Firebase数据库中删除书签列表里的特定餐厅?

解决Firebase删除特定餐厅书签的问题

嘿,我来帮你搞定这个删除餐厅书签的小难题!先看看你现有代码里的问题,再给你两种可靠的解决方法:

首先修正代码里的语法错误

你写的代码里有个反引号的位置错误——最后那个反引号不小心跑到括号外面了,这会导致路径解析失败,咱们先把这个小问题改掉。

方法一:使用list的remove方法(指定节点Key)

如果你的数据库结构是bookmarks/{user.uid}/restaurant/{restaurantId}(餐厅ID作为子节点的Key),可以用AngularFireList的remove方法,直接传入要删除的餐厅ID作为参数:

// 修正语法后的正确写法
this.afDb.list(`bookmarks/${user.uid}/restaurant`).remove(favorite.restaurant.id);

方法二:使用object直接定位删除

这种方式更直观,直接定位到要删除的具体节点路径,然后调用remove方法:

this.afDb.object(`bookmarks/${user.uid}/restaurant/${favorite.restaurant.id}`).remove();

额外需要确认的几点

  • 确保user.uid是当前登录用户的有效UID,没有为空或者获取错误
  • 检查favorite.restaurant.id和数据库中对应的餐厅节点Key完全匹配(注意大小写、特殊字符等细节)
  • 验证Firebase安全规则是否允许当前用户删除bookmarks/{user.uid}/restaurant/{restaurantId}这个节点,权限不足也会导致删除失败

内容的提问来源于stack exchange,提问作者Sireini

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 09:54:33