以下事务在运行时完全替换了Firestore Map中的数据:
DocumentSnapshot docSnapshot = await tx.get(docRef); // doc Snapshot
if (docSnapshot.exists) {
await tx.update(
docRef,
<String, dynamic>{
'Users': {
'user.uid': {'name': user.displayName, 'date': DateTime.now()},
}
},
);
与 FieldValue.arrayUnion 相同的方式,添加到地图而不是替换现有数据的正确方法是什么?
答案 0 :(得分:1)
既然您已经获取了数据,则可以从快照中取出地图,然后在其中替换数据并使用更改后的地图调用更新。