![](/img/trans.png)
[英]How to use Variables Cloud Firestore in Flutter (Dart) while doing query
[英]Flutter/Dart/FireStore Query Error: NoSuchMethod
我有一个查询Firestore并检索特定用户的函数,但我一直收到相同的错误。
我收到的错误如下:
I/flutter (29600): The following NoSuchMethodError was thrown building SellerInfo(dirty, state:
I/flutter (29600): _SellerInfoState#90e11):
I/flutter (29600): Class 'Future<User>' has no instance getter 'displayName'.
I/flutter (29600): Receiver: Instance of 'Future<User>'
I/flutter (29600): Tried calling: displayName
I/flutter (29600):
我首先尝试了这个:
Future<User> getUser(String displayName) async{
await Firestore.instance.collection('users')
.where('displayName', isEqualTo: displayName)
.snapshots()
.listen( (QuerySnapshot onData) {
List<User> user = onData.documents.map(
(DocumentSnapshot doc) => _fromUserSnapShot(doc)
);
return user.first;
});
return null;
}
接着
Future<User> getUser(String displayName) async{
return (await Firestore.instance.collection('users')
.where('displayName', isEqualTo: displayName)
.getDocuments())
.documents
.map((DocumentSnapshot doc) => _fromUserSnapShot(doc))
.first;
}
这是用户类
class User {
final String displayName;
final String email;
final String school;
User({
@required this.displayName,
@required this.email,
@required this.school,
});
}
尝试直接获取该用户的文档: Firestore.instance.collection('users').document(displayName).get()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.