状态构建器问题的颤振列表

时间:2021-01-12 22:37:39

标签: firebase flutter dart google-cloud-firestore state

所以我正在创建这个应用程序,其中包含一个遵循类似结构的帖子列表。

FutureBuilder(
  future: getPosts() <-Custom function that returns data from firestore
  builder:(context,snapshot){
     return ListView.builder(
            builder:(context,index){
            Post v=_dataToPost(snapshot.data()[index]) <- Custom function that transforms the data into a post
              bool userLike=v.like;
                 return StatefulBuilder(
                    builder(context,setSheet)=>
                         IconButton(
                         onPressed:(){
                         _likePost <-Custom function that updates firestore to like a post
                         setSheet({
                         userLike=!userLike
               })
               })
               )}
               )}
               )

首先,有人告诉我,这不是您正确使用 statefulbuilder 的方式,但我不想每次有人喜欢/不喜欢帖子时都调用 setState。但是我仍然需要在我的用户按下它时立即改变喜欢的图标(只是等待 _likePost 函数运行需要太长时间)。

我还注意到,当我实际上调用 setState(以获取更多帖子或 smt)时,like 按钮会恢复到之前的状态(在有人按下它之前)一瞬间,然后才赶上 Firestore 数据。这会使按钮闪烁一秒钟。

有什么想法吗?任何事情都值得赞赏我已经挠了好几天了......

0 个答案:

没有答案