美文网首页微信小程序开发微信小程序(应用号)微信小程序开发
微信小程序中如何利用setData进行列表局部刷新

微信小程序中如何利用setData进行列表局部刷新

作者: zhyzhyzz | 来源:发表于2018-04-11 23:27 被阅读3620次

应用场景

在一个列表中,有n条数据,采用上拉加载更多的方式,假如这个时候想对其中某一个数据进行点赞操作,还能及时看到点赞的效果

解决方法

1、可以采用setData全局刷新,点赞完成之后,重新获取数据,再次进行全局重新渲染,这样做的优点是:方便,快捷!缺点是:用户体验极其不好,当用户刷量100多条数据后,重新渲染量大会出现空白期(没有渲染过来)

2、说到重点了,就是利用setData局部刷新

a.将点赞的id传过去,知道点的是那一条数据

将点赞的id传过去,知道点的是那一条数据

b.重新获取数据,查找相对应id的那条数据的下标(一会方便替换之前渲染的列表中的那条数据,index是不会改变的)

c.用setData进行局部刷新

如图即可

其实这个小操作对刚刚接触到微信小程序的人来说应该是不容易发现的,不理解setData还有这样的写法。如果这篇文章对你有帮助,希望您也能加入我的qq群帮助更多需要帮助的小程序开发者:751741695

相关文章

网友评论

  • zhyzhyzz:有很多小伙伴都没看明白,我再总结一下;
    点击后:
    1、记录他的 id,所在列表List的index,计算出所在的pg
    2、重新获取数据page=pg,得到pg页数据,id==data[i].id =>记录下这条数据:data
    3、通用做法是:List[index] = data,小程序局部渲染setData:请仔细看文章最后一幅图
  • b4c1f35087ee:全网唯一的解决方案:+1:
  • Iamalwaysh_671e:编辑地址,亲测可用

本文标题:微信小程序中如何利用setData进行列表局部刷新

本文链接:https://www.haomeiwen.com/subject/zadtkftx.html