如何在 firebase flutter 中向现有地图添加新数据

how to add new data to existing map in firebase flutter

这里是 firebase 文档数据

我想向 purchased-id 添加新的地图值。这是当前代码

FirebaseFirestore.instance.collection('users').doc(userID).set({
  'purchased-id': {
    widget.head: widget.id,
  }
});               

但是使用此代码替换了地图值, 如何向现有地图添加另一个地图值

像这样

我认为需要 merge: true 用新值更新地图。

FirebaseFirestore.instance.collection('users').doc(userID).set({
  'purchased-id': {
    widget.head: widget.id,
  }
}, SetOptions(merge: true));

参考:https://firebase.google.com/docs/firestore/manage-data/add-data#update_fields_in_nested_objects

还要区分.set.update,看看这个答案: