Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- getProducts() async {
- if (!hasMore) {
- print('No More Products');
- return;
- }
- if (isLoading) {
- return;
- }
- setState(() {
- isLoading = true;
- });
- QuerySnapshot querySnapshot;
- if (lastDocument == null) {
- for( int i=0; i< foollowingList.length; i++) {
- querySnapshot = await Firestore.instance
- .collection('posts/${foollowingList[i]}/userPosts')
- .orderBy('ownerId')
- .orderBy('timestamp', descending: true)
- .limit(documentLimit).getDocuments();
- }
- } else {
- for( int i=0; i< foollowingList.length; i++) {
- querySnapshot = await Firestore.instance
- .collection('posts/${foollowingList[i]}/userPosts')
- .orderBy('ownerId')
- .orderBy('timestamp', descending: true)
- .startAfterDocument(lastDocument)
- .limit(documentLimit).getDocuments();}
- print(1);
- }
- if (querySnapshot.documents.length ==0) {
- hasMore = false;
- }
- lastDocument = querySnapshot.documents[querySnapshot.documents.length - 1];
- products.addAll(querySnapshot.documents);
- setState(() {
- isLoading = false;
- });
- }
- buildPosts(){
- return
- Column(children: [
- Expanded(
- child: products.length == 0
- ? Center(
- child: Text('No Data...'),
- )
- : ListView.builder(
- controller: _scrollController,
- itemCount: products.length,
- itemBuilder: (context, index) {
- return
- FutureBuilder(
- future: usersRef.document(products[index].data['ownerId']).get(),
- builder: (context, snapshot) {
- if (!snapshot.hasData) {
- return circularProgress();
- }
- User user = User.fromDocument(snapshot.data);
- // bool isPostOwner = currentUserId == ownerId;
- return Column(children: <Widget>[
- ListTile(
- leading: GestureDetector(
- onTap: () => showProfile(context, profileId: user.id),
- child: CircleAvatar(
- backgroundImage: CachedNetworkImageProvider(user.photoUrl),
- backgroundColor: Colors.grey,
- ),
- ),
- title: GestureDetector(
- onTap: () => showProfile(context, profileId: user.id),
- child: Text(
- user.displayName,
- style: TextStyle(
- color: kText,
- fontWeight: FontWeight.bold,
- ),
- ),
- ),
- subtitle: GestureDetector(
- onTap: () => showProfile(context, profileId: user.id),
- child: Text(user.username,
- style: TextStyle(color: kIcon),),
- ),),
- cachedNetworkImage(products[index].data['mediaUrl']),
- Divider(color: kGrey,),
- ],
- );
- },
- );
- // ListTile(
- // contentPadding: EdgeInsets.all(5),
- // title: Text(products[index].data['name']),
- // subtitle: Text(products[index].data['short_desc']),
- // );
- },
- ),
- ),
- isLoading
- ? Container(
- width: MediaQuery.of(context).size.width,
- padding: EdgeInsets.all(5),
- color: Colors.yellowAccent,
- child: Text(
- 'Loading',
- textAlign: TextAlign.center,
- style: TextStyle(
- fontWeight: FontWeight.bold,
- ),
- ),
- )
- : Container()
- ]);
- }
- D/ViewRootImpl@caa9e6d[MainActivity]( 6174): ViewPostIme pointer 0
- D/ViewRootImpl@caa9e6d[MainActivity]( 6174): ViewPostIme pointer 1
- E/flutter ( 6174): [ERROR:flutter/lib/ui/ui_dart_state.cc(166)] Unhandled Exception: NoSuchMethodError: The getter 'id' was called on null.
- E/flutter ( 6174): Receiver: null
- E/flutter ( 6174): Tried calling: id
- E/flutter ( 6174): #0 Object.noSuchMethod (dart:core-patch/object_patch.dart:51:5)
- E/flutter ( 6174): #1 _TimelineState.getTimeline (package:fashow/Timeline.dart:252:40)
- E/flutter ( 6174): #2 _TimelineState.initState (package:fashow/Timeline.dart:51:7)
- E/flutter ( 6174): #3 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4682:58)
- E/flutter ( 6174): #4 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4518:5)
- E/flutter ( 6174): #5 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3488:14)
- E/flutter ( 6174): #6 Element.updateChild (package:flutter/src/widgets/framework.dart:3256:18)
- E/flutter ( 6174): #7 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5872:14)
- E/flutter ( 6174): #8 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3488:14)
- E/flutter ( 6174): #9 Element.updateChild (package:flutter/src/widgets/framework.dart:3256:18)
- E/flutter ( 6174): #10 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5872:14)
- E/flutter ( 6174): #11 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3488:14)
- E/flutter ( 6174): #12 Element.updateChild (package:flutter/src/widgets/framework.dart:3256:18)
- E/flutter ( 6174): #13 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4569:16)
- E/flutter ( 6174): #14 Element.rebuild (package:flutter/src/widgets/framework.dart:4260:5)
- E/flutter ( 6174): #15 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4523:5)
- E/flutter ( 6174): #16 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4518:5)
- E/flutter ( 6174): #17 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3488:14)
- E/flutter ( 6174): #18 Element.updateChild (package:flutter/src/widgets/framework.dart:3256:18)
- E/flutter ( 6174): #19 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4569:16)
- E/flutter ( 6174): #20 Element.rebuild (package:flutter/src/widgets/framework.dart:4260:5)
- E/flutter ( 6174): #21 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4523:5)
- E/flutter ( 6174): #22 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4518:5)
- E/flutter ( 6174): #23 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3488:14)
- E/flutter ( 6174): #24 Element.updateChild (package:flutter/src/widgets/framework.dart:3256:18)
- E/flutter ( 6174): #25 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4569:16)
- E/flutter ( 6174): #26 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4717:11)
- E/flutter ( 6174): #27 Element.rebuild (package:flutter/src/widgets/framework.dart:4260:5)
- E/flutter ( 6174): #28 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4523:5)
- E/flutter ( 6174): #29 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4708:11)
- E/flutter ( 6174): #30 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4518:5)
- E/flutter ( 6174): #31 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3488:14)
- E/flutter ( 6174): #32 Element.updateChild (package:flutter/src/widgets/framework.dart:3256:18)
- E/flutter ( 6174): #33 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4569:16)
- E/flutter ( 6174): #34 Element.rebuild (package:flutter/src/widgets/framework.dart:4260:5)
- E/flutter ( 6174): #35 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4523:5)
- E/flutter ( 6174): #36 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4518:5)
- E/flutter ( 6174): #37 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3488:14)
- E/flutter ( 6174): #38 Element.updateChild (package:flutter/src/widgets/framework.dart:3256:18)
- E/flutter ( 6174): #39 SliverMultiBoxAdaptorElement.updateChild (package:flutter/src/widgets/sliver.dart:1162:36)
- E/flutter ( 6174): #40 SliverMultiBoxAdaptorElement.createChild.<anonymous closure> (package:flutter/src/widgets/sliver.dart:1147:20)
- E/flutter ( 6174): #41 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2618:19)
- E/flutter ( 6174): #42 SliverMultiBoxAdaptorElement.createChild (package:flutter/src/widgets/sliver.dart:1140:11)
- E/flutter ( 6174): #43 RenderSliverMultiBoxAdaptor._createOrObtainChild.<anonymous closure> (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:354:23)
- E/flutter ( 6174): #44 RenderObject.invokeLayoutCallback.<anonymous closure> (package:flutter/src/ren
Add Comment
Please, Sign In to add comment