问题背景

在小程序列表中,对某一条点赞,成功后setData修改点赞数量,接口请求成功回调如下

success: res => {this.data.posters[index].like_sum = parseInt(this.data.posters[index].like_sum) + 1;this.setData({poster: this.data.posters})
},

此处的index是在wxml中for循环的index偏移下标,绑定到节点数据:
data-index="{{index}}"
wxs中通过点击事件获取 :
var index = parseInt(event.currentTarget.dataset.index);
这里不做赘述

发现页面向上或向下移动了一定距离,如gif图所示:

想了想应该是因为setData整个posters数组后,重新渲染了整个列表,每条数据的图片重新渲染尺寸时对页面产生了一定影响,导致列表抖动了位置。

那么如何解决呢?

处理办法

在setData时写成如下样子即可只刷新指定节点,不会导致整个列表都重绘:

this.setData({//poster: this.data.posters, //原来这样写的["posters[" + index + "]"]: this.data.posters[index], //换成这样可局部刷新
})

只需更换一行代码即可。

如对您有帮助,不妨点赞关注一波~

微信小程序列表局部(单条)刷新相关推荐

  1. 微信小程序列表加载动画示例

    微信小程序列表加载动画 微信小程序列表加载动画示例 实现思路 什么是动画? 导航栏设置 列表动画加载 完整代码demo 微信小程序列表加载动画示例 初学微信小程序开发,记录一下.网上找了很久这种效果, ...

  2. 微信小程序实现下拉刷新

    微信小程序实现下拉刷新 配置json文件 在js文件中写下拉刷新方法 注意 配置json文件 如果需要全局使用下拉刷新就在app.json中设置 如果为单页面使用则在页面json设置即可 " ...

  3. 微信小程序scroll-view实现自定义刷新

    微信小程序scroll-view实现自定义刷新@TOC 先说原生页面级的刷新 通常我们可以利用微信小程序的onPullDownRefresh函数(下拉刷新监听函数)和onReachBottom函数(上 ...

  4. 微信小程序详解 php,微信小程序列表开发详解

    本文主要和大家分享微信小程序列表开发详解,主要以代码的形式和大家分享,希望能帮助到大家. 一.知识点 (一).列表渲染 wx:for tip:wx:for="array"可以等于参 ...

  5. 微信小程序列表实现文字内容超出隐藏并显示全文/收起按钮

    微信小程序列表实现文字内容超出隐藏并显示全文/收起按钮 针对这个功能,产品的需求如下 由于我们项目是教育类产品所以这里这个功能会用在发动态这里,就像微信朋友圈那样,我们叫班级圈. 用户发班级圈时,可以 ...

  6. 微信小程序使用echarts/数据刷新重新渲染/图层遮挡问题

    微信小程序使用echarts/数据刷新重新渲染/图层遮挡问题 1.微信小程序使用echarts,首先下载echarts并导入小程序项目中,因小程序后期上线对文件大小有要求,所以建议进行定制下载导入可减 ...

  7. 微信小程序实现下拉刷新功能

    第一步.在app.json文件里把enablePullDownRefresh设置为true 第二步.在需要下拉刷新页面的js文件里写onPullDownRefresh:function(){}这个方法 ...

  8. 微信小程序列表页分页加载功能

    微信小程序做分页加载数据,会做一些下拉加载更多.然后上拉刷新的操作.数据放在一个for循环里去加载,数据源是一个数组对象.在加载下一页数据时,将下一页的数据拼到当前数组后面. 代码如下: wxml代码 ...

  9. 微信小程序webview页面不刷新,webview缓存页面不刷新,小程序webview页面不刷新,小程序webview地址追加参数页面还是缓存,解决办法

    项目需求,在微信小程序首页的 banner 图,打开公司官网,这个功能很好实现,就是专门整个 webview 组件所在页面,以后凡是有这种需求的都跳转到这个页面,只需要切换不同的路由地址就行了,可是最 ...

  10. 微信小程序 五 下拉刷新

    微信小程序提供了原声的下拉刷新,三个小点的下拉刷新. 在.json 中写 {"enablePullDownRefresh": true, //开启下拉刷新"backgro ...

最新文章

  1. c语言实现天气预报步骤,一份天气预报的制作历程
  2. Java NIO (五) 管道 (Pipe)
  3. intellij idea 1314 插件推荐及快速上手建议
  4. 青岛经济职业学校有计算机专业吗,青岛经济职业学校
  5. MapReduce 工作原理
  6. linux数据软件,Linux数据安全工具:数据镜像软件DRBD的管理与维护
  7. u大师u盘自定义ISO/IMG文件装机教程
  8. 无线城域网-无线广域网
  9. 一点浩然气,千里快哉风
  10. html旋转木马 代码,JavaScript实现旋转木马轮播图
  11. 阿里云-云开发平台计算篇——加强应用本身的计算能力
  12. html+css3跑马灯(抖音我们的照片记录幸福到永远)
  13. 【工具】MobaXterm常用设置
  14. 电子商务网站:SEO优化的15个基本技巧!
  15. 中小学高级职称计算机考试试题,2012年小学教师高级职称考试备考试题及参考答案(2)...
  16. 滤了asa,cer,cdx,php,aspx等脚本类型的上传情况下添加一个ashx的上传类型
  17. CVPR 2019 Oral 论文精选汇总,值得一看的 CV 论文都在这里(持续更新中)
  18. 群晖NAS同步阿里云盘数据
  19. php培训视频全套,43G 干货分享 2017年泰牛PHP全套视频+培训全套完整版课件
  20. 磁盘存储管理-----操作系统

热门文章

  1. 开源免费录屏和直播软件OBS Studio教程
  2. linux libxml2编译,libxml2 ARM 交叉编译
  3. tp框架 文件上传+excel表格导入
  4. 武汉好地科技为您解析CMMI3和CMMI5的区别
  5. c语言标准库详解(一):stdio.h之文件操作
  6. macbook 终端命令怎么使用_Mac 常用终端命令整理
  7. 用C语言如何编程一道选择题,使用C语言编写一道简单的编程题
  8. Unity LitJson的读写使用
  9. Jquery EasyUi日期输入框(点击今天不自动填充)
  10. 树莓派 | 摄像头模块的使用方法