我正在尝试使用防火墙实时数据库多路径更新。但是,尝试将父节点设置为null将导致错误。
const firebaseUpdate = {}
firebaseUpdate[`user/${uid}`] = null
db.ref().update(firebaseUpdate) 错误: Reference.update失败:第一个参数包含一个路径/user/USER_ID,它是另一个路径/user/USER_ID/creationTime的祖先
我想知道是否有一种方法可以使用多路径更新,以便将具有多个子节点的父节点设置为null。我想我可以使用remove或set函数,但我更愿意使用多路径更新。
发布于 2019-06-27 12:29:13
错误消息指示您试图在一个操作中将两个冲突的更新应用于数据库。正如消息所述,您的更新尝试:
/user/USER_ID/user/USER_ID/creationTime第二个字是第一个字的子字。由于未指定多个位置中的写入顺序,因此不可能说写操作的结果是什么。
如果您想用/user/USER_ID替换当前在creationTime中存在的任何数据,您应该按如下方式更新:
db.ref().update({
"/user/USER_ID": { creationTime: Date.now() }
}) https://stackoverflow.com/questions/56788587
复制相似问题