我需要在 for...循环之前将数据添加到 Map 或 HashMap,在 for...循环期间将数据添加到 Map,然后在循环后创建包含所有数据的文档。
在 Android 的 Java 中我使用了:
Map<String, Object> createDoc = new HashMap<>();
createDoc.put("type", type);
createDoc.put("title", title);
for (int x = 0; x < sArray.size(); x++) {
createDoc.put("data " + x,sArray.get(x));
}
firebaseFirestoreDb.collection("WPS").add(createDoc);
我的问题是,如何创建文档并立即获取它的 ID,然后将其与其余数据更新/合并?或者有没有办法在 Dart 中将数据添加到 Map 中?
我在 Dart 中发现的唯一的东西是:
Map<String, Object> stuff = {'title': title, 'type': type};
在 for...循环中:
stuff = {'docRef $x': docId};
在 for...循环之后:
Firestore.instance.collection('workouts').add(stuff);
它创建一个仅包含 for...循环中最后一个条目的文档。
我还导入了 dart:collection 来使用 HashMap,但它不允许我使用
Map<String, Object> newMap = new HashMap<>();
我收到错误:"A value of type 'HashMap' can't be assigned to a variable of type 'Map<String, Object>'
"
先感谢您!