我想收集所有数据并将它们放入一个地图变量中:
//function
Future<Map<String, String>?> getLoginUser() async{
Map<String,String> ?userLoginInfo;
userTable!.get().then((res) {
var data = res.data;
userLoginInfo!.update(data['userEmail'],data['userPwd']);
});
return userLoginInfo;
}
//I want to use the above function
Map<String,String>mockUsers=.getLoginUser() as Map<String, String>;
但是跑起来就是浪费时间,谁能告诉我这个以后怎么用?
谢谢!
答案 0 :(得分:0)
使用 async
关键字删除/简化了 then()
的用法
Future<Map<String, String>?> getLoginUser() async{
Map<String,String>? userLoginInfo;
var data = (await userTable!.get()).data;
userLoginInfo!.update(data['userEmail'],data['userPwd']);
return userLoginInfo;
}
用法
Map<String,String> mockUsers = await getLoginUser()!;
或
Map<String,String>? mockUsers = await getLoginUser();