是否可以删除Firestore文档中的所有字段,除了单个数据库写入中的一个字段(无需pior读取)
我知道我有一份文件,里面有一些礼仪,但我不是全部都知道。 我想删除所有这些属性,除了一个我知道的属性。
我知道的是keep
。
{
keep: 'keep',
remove1: 'remove',
remove2: 'remove',
remove3: 'remove',
}
交易结束后的单据应为:
{
keep: 'keep',
}
我可以在每个键t上使用firebase.firestore.fieldvalue.delete()
如果您知道要保留的字段的名称和值,则可以使用只包含您知道的属性的对象覆盖文档:
const keepValue = ...;
db.collection('mycollection').doc('mydoc').
set(
{ keep: keepValue }
);
由于我们使用的set()
方法没有合并选项,文档中的所有字段都将被传递给set()
方法的对象覆盖。
如果您不知道要保留的字段的值(或名称),则需要阅读文档,以便找到该值或名称。