开始写长列表的时候,是将分页数据合并到一起在重新渲染,发现正常浏览还行,但是数据超过200多条的时候,新数据会出现一段白屏时间。于是做了如下些许优化
var datalistt = res.data
var arr = [];
datalistt.forEach(function (item) {
arr.push({
goods_name: item.goods_name,
goods_id: item.goods_id
})
})
that.setData({
["Popular_shopping[" + (that.data.page - 1) + "]"]: arr
})
将每次接收的数据用数组分开保存,每次渲染只渲染当前下标的数据
<view wx:for="{{Popular_shopping}}" wx:key='list1' wx:for-item="itemP">
<view wx:for="{{itemP}}" wx:key='list' wx:for-item="item" class='shop'>
</view>
</view>
用二次循环使用
(在做长列表加载的时候发现了一个问题,获取同一条数据来渲染,每次渲染的时间差别挺大的,有知道的麻烦留言O(∩_∩)O谢谢)