我在firestore文档中的数组内部使用map。问题是,当我用新值添加地图时,而不是增加数组的大小,而是用当前地图替换了新地图。 我的代码如下所示:
Map<String, dynamic> map = {'name': "Asad"};
RaisedButton(
child: Text("press me"),
onPressed: () {
Firestore.instance.collection('Shops').document('2').setData({
'name': 'Ali',
'id': '3',
'array': FieldValue.arrayUnion([map])
});
},
),
我的firestore数据库看起来像这样:
答案 0 :(得分:2)
如果要更新文档而不是覆盖文档内容,则应使用updateData()而不是setData()。要么将{merge: true}
传递给setData()作为第二个参数。