错误'package:cloud_firestore / src / query.dart':断言失败:226行pos 12:'documentSnapshot!= null':不正确。扑火库

时间:2020-10-27 16:32:09

标签: firebase flutter dart google-cloud-firestore

从Firestore获取前两个文档后,我正尝试获取下两个文档

这就是我要尝试的方法:-

class DatabaseService {
  final String uid;

  DatabaseService({this.uid});

  // collection reference
  final CollectionReference profile =
      Firestore.instance.collection('profileData');

  int pagesize = 10;

  String globaldistrict;
  DocumentSnapshot lastsnap;

  List<UserProfileData> userProfileListFromSnapshot(QuerySnapshot snapshot) {
    return snapshot.documents.map((doc) {
      return UserProfileData(
          uid: doc.data['uid'],
          name: doc.data['name'] ?? '',
          district: doc.data['district'] ?? '',
          phoneNumber: doc.data['phoneNumber'] ?? null,
          address: doc.data['address'] ?? '',
          profilePic: doc.data['profilePic'],
          location: doc.data['location'] ?? null);
    }).toList();
  }

  //  ################## get profile list stream ##################

  Stream<List<UserProfileData>> userprofilelist(String district) {
    Query profilesquery =
        profile.orderBy('name').where('district', isEqualTo: district).limit(2);
    Stream<QuerySnapshot> profilesnap = profilesquery.snapshots();
    profilesnap.listen((event) {
      lastsnap = event.documents[event.documents.length - 1];
    });

    return profilesnap.map(userProfileListFromSnapshot);
  }

  Stream<List<UserProfileData>> moreuserprofilelist() {
    Stream<QuerySnapshot> moreprofilesnap = profile
        .orderBy('name')
        .startAfterDocument(lastsnap)
        .where('district', isEqualTo: globaldistrict)
        .limit(2)
        .snapshots();

    return moreprofilesnap.map(userProfileListFromSnapshot);
  }
}

但是我遇到这样的错误:-

错误'package:cloud_firestore / src / query.dart':断言失败:第226行pos 12:'documentSnapshot!= null':不正确。

如何获取第一流的最后一个文档,以便从那里开始下一个查询?

0 个答案:

没有答案