我想要得到Future
返回值并像变量一样使用它。
我有这个Future
功能
Future<User> _fetchUserInfo(String id) async {
User fetchedUser;
await Firestore.instance
.collection('user')
.document(id)
.get()
.then((snapshot) {
final User user = User(snapshot);
fetchedUser = user;
});
return fetchedUser;
}
我想像这样获得价值
final user = _fetchUserInfo(id);
但是当我尝试这样使用时
new Text(user.userName);
Dart 无法识别为User
班级。它说dynamic
.
如何获取返回值并使用它?
我首先做错了吗?
任何帮助表示赞赏!
您可以简化代码:
Future<User> _fetchUserInfo(String id) async {
User fetchedUser;
var snapshot = await Firestore.instance
.collection('user')
.document(id)
.get();
return User(snapshot);
}
你还需要async
/await
获取值
void foo() async {
final user = await _fetchUserInfo(id);
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)