【发布时间】:2021-08-29 11:33:00
【问题描述】:
迁移到 null 安全后出现错误 getter 'docs' 没有为类型 'AsyncSnapshot
错误所在的代码 sn-p
return FutureBuilder(
future: searchResultsFuture,
builder: (context, snapshot) {
if (!snapshot.hasData) {
return circularProgress();
}
List<UserResult> searchResults = [];
snapshot.docs.forEach((doc) { //have error here
User user = User.fromDocument(doc);
UserResult searchResult = UserResult(user);
searchResults.add(searchResult);
});
return ListView(
children: searchResults,
);
},
);
}
搜索结果未来
handleSearch(String query) {
Future<QuerySnapshot> users =
usersRef.where("displayName", isGreaterThanOrEqualTo: query).get();
setState(() {
searchResultsFuture = users;
});
}
clearSearch() {
searchController.clear();
}
【问题讨论】:
-
“没有为类型 'AsyncSnapshot
-
那么我该怎么做才能修复我的代码?
-
使用
AsyncSnapshot.data属性 -
@pskink 你能告诉我如何在这里使用
AsyncSnapshot.data属性 -
如果你打电话给
print(snapshot.data),你会看到什么?如果不是null,那么它有你的数据
标签: firebase flutter google-cloud-firestore flutter-futurebuilder