小程序触底刷新加载更多,如何局部刷新列表?

Posted BerryJamLv

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了小程序触底刷新加载更多,如何局部刷新列表?相关的知识,希望对你有一定的参考价值。

需求:小程序触底刷新加载更多,列表很长时如何局部刷新列表?(只刷新新增部分)

let oldList = [1, 2, 3]
let addList = [4, 5]
let newList = [1, 2, 3, 4, 5]
// oldList + addList = newList

问题具象化:setData() 时,只刷新 addList 而非刷新整个的 newList

旧的解决方式:

// 代码块1
newList = oldList.concat(addList)
this.setData(
	oldList: newList
)
// 刷新了整个列表,资源浪费

新的解决方法:

// 代码块2
let index = this.data.oldList.length;
addList.forEach(ele => 
    this.setData(
        [`oldList[$index++]`]: ele
    )
);
// 部分刷新列表,高效简洁

说明: 以上代码完成了新增列表addList的局部刷新

以上是关于小程序触底刷新加载更多,如何局部刷新列表?的主要内容,如果未能解决你的问题,请参考以下文章

微信小程序学习 下滑刷新触底上滑刷新

微信小程序的下拉刷新事件和上拉触底事件

uni-app 页面触底刷新

React-native ScrollView 上拉加载和下拉刷新

小程序 上拉刷新/下拉加载

微信小程序页面事件