firebase - 颤振状态生成器问题列表
问题描述
所以我正在创建这个应用程序,它有一个遵循类似结构的帖子列表。
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。但是我仍然需要在我的用户按下它后立即更改like图标(只是等待_likePost函数运行需要太长时间)。
我还注意到,当我实际上调用 setState(以获取更多帖子或 smt)时,like 按钮会在一瞬间恢复到其先前的状态(在有人按下它之前),然后再赶上 firestore 数据。这使按钮闪烁一瞬间。
有任何想法吗?任何事情都值得赞赏我已经挠头好几天了......