【发布时间】:2021-07-13 20:18:58
【问题描述】:
我已经发布了我的数据库模型,然后是下面调用地图的代码。以下行>>>
MarkerCollectModel model = MarkerCollectModel.fromMap(map()!)
给我一个错误错误:参数类型“Object”不能分配给参数类型“Map
如何使模型与新版本的 firestore 一起工作?
class MarkerCollectModel {
double? lat, lng;
String? name, detail, dateTime, uid;
MarkerCollectModel(
{this.lat,
this.lng,
this.name,
this.detail,
this.dateTime,
this.uid});
MarkerCollectModel.fromMap(Map<String, dynamic> map) {
lat = map['Lat'];
lng = map['Lng'];
name = map['Speed'];
detail = map['Racer'];
dateTime = map['DateTime'];
uid = map['Uid'];
}
}
Future<void> readDataFromFirebase() async {
print('###############readDataFromFirebase Work####################');
Firebase.initializeApp();
FirebaseFirestore firestore = FirebaseFirestore.instance;
CollectionReference collectionReference =
firestore.collection('usertest');
collectionReference.snapshots().listen((event) {
List<DocumentSnapshot> snapshots = event.docs;
for (var map in snapshots) {
MarkerCollectModel model = MarkerCollectModel.fromMap(map()!);
String nameDocument = map.id;
listDocuments.add(nameDocument);
print('Name ==>> ${model.name}');
Marker marker = createMarker(model, nameDocument);
setState(() {
list.add(marker);
print('myMarkers set lenght ==>> ${myMarkers().length}');
});
}
});
}
【问题讨论】:
标签: firebase flutter dart google-cloud-firestore