例如,如果尝试更新一项有效,我正在尝试使用angularfire2更新集合中的所有字段:
this.participantSubscription = this.participants$.pipe(
zip(
this.user$.pipe(filter(Boolean)),
this.retroId$,
this.retrospective$.pipe(take(1)),
),
).subscribe(([user, retroId]) => {
const participantDocument = this.db.doc(`retrospectives/${retroId}/participants/${user.uid}`);
participantDocument.update({
ready: false,
});
});
然后,如果我删除${user.uid}
并尝试将所有参与者更新为ready: false
,我将收到此错误。
ERROR Error: Invalid document reference. Document references must have an even number of segments, but retrospectives/zj5tv2rrTAdJSQACGJqJ/participants has 3
如何一次更新集合中的所有字段?我正在考虑进行一次forEach并更新每个参与者,但我认为这不是一个好方法。