React Native中Firebase实时数据库单条数据删除异常求助
问题解决:Firebase实时数据库删除单条条目误删整个节点
问题出在deleteTask函数中ref()方法的调用方式错误:
Firebase的ref()方法接受的第二个参数是完整的路径字符串,不能将id作为第三个参数单独传递。你之前的写法ref(db, '/todos', id)会创建指向/todos根节点的引用,调用remove()自然会删除整个节点。
修正后的删除函数:
const deleteTask = () => { console.log('will delete: ', id); remove(ref(db, `/todos/${id}`)) }
对比你的更新函数,update()方法是在/todos节点下,通过[id]指定要更新的子节点路径,所以逻辑是正确的。而删除操作需要直接指向要删除的子节点路径,因此必须把id拼接在路径字符串中。
内容的提问来源于stack exchange,提问作者mr-woodapple
相关产品推荐
相关产品推荐

