我正在尝试从 firestore 中的数组中删除一个对象,但遇到了障碍,执行删除的要求或参考是什么?对象中的一个键值是否足以执行删除操作,或者该对象是否应该与要删除的对象相同?
const deleteWeek = async () => {
const docRef = doc(db, 'Weeks', id);
await updateDoc(docRef, {
weeks: arrayRemove({
weekId: '7518005f-7b10-44b6-8e0a-5e41081ee064',
}),
});
};
deleteWeek();
}
然而数据库中的周看起来像这样
{name ,"Week 2"
days : [/*data all kinds*/]
weekId : "7518005f-7b10-44b6-8e0a-5e41081ee064"}
如果它是一个对象数组,那么您需要知道要使用的整个对象arrayRemove()
例如,如果文档如下所示:
{
...data
weeks: [
{
name: "Week 2",
days: [/*data all kinds*/]
weekId: "7518005f-7b10-44b6-8e0a-5e41081ee064"}
}
]
}
您必须将整周对象传递给arrayRemove()
。最好将此类数据存储在子集合中,以便您可以查询/删除特定数据。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)