小程序滾動(dòng)加載更多功能的實(shí)現(xiàn)
小程序滾動(dòng)加載更多是小程序基本的操作功能,如何實(shí)現(xiàn)呢?
1.需要用到的組件和api
scroll-view(可滾動(dòng)視圖區(qū)域)
wx.showToast(OBJECT)顯示消息提示窗----顯示loading小菊花用的
2.需要用到的屬性
3.scrol-view需要指定一個(gè)高度,這個(gè)高度可以按自己的需求計(jì)算,一般使用的是屏幕可用高度并且默認(rèn)一頁(yè)顯示6個(gè)
4.滾動(dòng)到底部綁定需要觸發(fā)的事件
5.操作事件函數(shù),主要是將請(qǐng)求下來(lái)的數(shù)據(jù)用concat方法進(jìn)行合并,然后賦值,我是用的for循環(huán)假裝添加的數(shù)據(jù),實(shí)際項(xiàng)目中可以換成自己的ajax,并且為了模擬加載我添加了一個(gè)1.5秒的定時(shí)器,先調(diào)用提示框api成功之后關(guān)閉
lower() {
var result = this.data.res;
var resArr = [];
//這里可以使用自己的ajax
for (let i = 0; i < 10; i++) {
resArr.push(i);
};
var cont = result.concat(resArr);//合并請(qǐng)求的數(shù)據(jù)
console.log(resArr.length);
if (cont.length >= 100) {
wx.showToast({ //期間為了顯示效果可以添加一個(gè)過(guò)度的彈出框提示“加載中”
title: '我也是有底線的',
icon: 'success',
duration: 300
});
return false;
} else {
wx.showLoading({ //期間為了顯示效果可以添加一個(gè)過(guò)度的彈出框提示“加載中”
title: '加載中',
icon: 'loading',
});
setTimeout(() => {
this.setData({
res: cont
});
wx.hideLoading();
}, 1500)
}
}
6.成功,放完整代碼可以直接復(fù)制運(yùn)行
wxml代碼
<scroll-view scroll-y='true' bindscrolltolower='lower'> <view wx:for="{{res}}" data-id="{{index}}" wx:key="{{index}}" >{{item}
HiShop小程序工具提供多類型商城/門店小程序制作,可視化編輯 1秒生成5步上線。通過(guò)拖拽、拼接模塊布局小程序商城頁(yè)面,所看即所得,只需要美工就能做出精美商城。
更多小程序資訊,盡在:westcoastpropertyservices.com/xiaocx/