For循环在控制台中为每个用户返回数据,但map在控制台中不为firebase中的某个用户返回任何内容
我正在那里制作一个应用程序,如果我使用For循环在控制台中为每个用户返回数据,但map在控制台中不为firebase中的某个用户返回任何内容,firebase,flutter,dart,google-cloud-firestore,Firebase,Flutter,Dart,Google Cloud Firestore,我正在那里制作一个应用程序,如果我使用forEach,Firebase会在控制台中为每个用户打印数据,但当我通过映射功能获取数据时,它不会为某些用户获取数据。错误在于我希望列表流通过map函数获取数据。这是我的职责 @override Stream<List<RouteModel>> myRoutes() { print('My Routes Running-----'); return Observable(fire_auth.FirebaseA
forEach
,Firebase会在控制台中为每个用户打印数据,但当我通过映射功能获取数据时,它不会为某些用户获取数据。错误在于我希望列表流通过map函数获取数据。这是我的职责
@override
Stream<List<RouteModel>> myRoutes() {
print('My Routes Running-----');
return Observable(fire_auth.FirebaseAuth.instance.userChanges())
.flatMap((firebaseUser) {
FirebaseFirestore.instance
.collection("routes")
.where('creator', isEqualTo: '0seumQckLrhcGsaOQXtZeEvVbfp1')
.get()
.then((querySnapshot) {
querySnapshot.docs.forEach((result) {
print('This is all user Data : ${result.data()}');
});
});
print('function is running');
return _collectionReference()
.where("creator", isEqualTo: firebaseUser.uid)
.orderBy("created", descending: true)
.snapshots()
.where((snapshot) => snapshot != null)
.map((snapshot) {
print('rinning snaopshot');
print('This is the bla bla' + snapshot.docs.toString());
var list1 = snapshot.docs.length;
// var list2 = snapshot.docs.map((e) {
// return routeModelFromJson(e.id, firebaseUser.uid, e.data());
// });
var list2 = snapshot.docs.map((e) => e.data());
print(list2);
var list = snapshot.docs.map((snapshot) {
print('hahahhaha' + snapshot.data().toString());
print('hehehe list -----------$list1');
print('No No list -----------$list2');
return routeModelFromJson(
snapshot.id, firebaseUser.uid, snapshot.data());
}).toList();
// var list2 = snapshot.docs.map((e) => e.toString());
// print('This is List of data of the Client $list');
// var data = list.map((event) => event.distance);
// print('This is the Main Data of Routes $data');
return list;
});
// return list;
});
}
@覆盖
流式myRoutes(){
打印(“我的路线运行------”);
返回可观察(fire\u auth.FirebaseAuth.instance.userChanges())
.flatMap((firebaseUser){
FirebaseFirestore.instance
.收集(“路线”)
.where('creator',isEqualTo:'0seumQckLrhcGsaOQXtZeEvVbfp1')
.get()
.然后((querySnapshot){
querySnapshot.docs.forEach((结果){
打印('这是所有用户数据:${result.Data()}');
});
});
打印(“函数正在运行”);
返回_collectionReference()
.where(“创建者”,isEqualTo:firebaseUser.uid)
.orderBy(“已创建”,降序:true)
.快照()
.where((快照)=>快照!=null)
.map((快照){
印刷品(“剥皮斯诺普肖特”);
打印('这是bla-bla'+snapshot.docs.toString());
var list1=snapshot.docs.length;
//var list2=snapshot.docs.map((e){
//返回routeModelFromJson(e.id,firebaseUser.uid,e.data());
// });
var list2=snapshot.docs.map((e)=>e.data());
打印(列表2);
var list=snapshot.docs.map((快照){
打印('hahahaha'+snapshot.data().toString());
打印('hehehe list------$list1');
打印('No-list------$list2');
返回routeModelFromJson(
snapshot.id,firebaseUser.uid,snapshot.data();
}).toList();
//var list2=snapshot.docs.map((e)=>e.toString());
//打印(“这是客户机$List的数据列表”);
//var data=list.map((事件)=>event.distance);
//打印('这是Routes$Data的主数据');
退货清单;
});
//退货清单;
});
}
您也可以添加输出吗?