애플릿에서 더 많이 불러오기
9845 단어 애플릿
효과 html 부분부터 볼게요.
<view class="list-content">
<view class="list-item" bindtap="exchange" wx:for="{{creditList}}" data-item="{{item}}" wx:key="index">
<image src="{{item.image}}" mode="aspectFit"></image>
<view class="desc">{{item.name}}</view>
<view class="use-credit">
<text>{{item.points}}</text>
<text> </text>
</view>
</view>
<view class="bottom-txt" wx:if="{{totalPage < page}}">
<view></view>
<text> </text>
<view></view>
</view>
</view>
js1、먼저 데이터에서 하나의 페이지를 12로 정의하고, 페이지에 처음 들어갈 때 페이지:1을 백엔드 3에 전달하고, onReach Bottom에서 논리 처리 페이지 수가 1보다 많으면 얻은 다른 페이지의 데이터를 연결하고, 페이지+1을 하지 않으면 값을 부여하는 작업을 한다.
data: {
//
creditList:[],
userCredit:0,
totalPage:0,//
page:1,//
userInfo:app.globalData,//
tAccessToken:wx.getStorageSync("access_token"),//token
},
getMoreList(page){
let that = this
//
if(page == 1){
wx.showLoading({
title: ' ',
})
}
wx.request({
url: ' ',
header:{
"Authorization": 'Bearer ' + that.data.tAccessToken
},
data:{
current:that.data.page,//
size:6//
},
success:(res) => {
let list = res.data.data.records
//
this.setData({
totalPage:res.data.data.pages
})
// 1 ,page+1
if(that.data.page > 1){
let listArr = that.data.creditList
that.setData({
creditList:listArr.concat(list),
page:page + 1
})
} else {
// ,page+1
that.setData({
creditList:list,
page:page + 1
})
}
},
fail:(err) => {
console.log(err)
},
complete: (finish) => {
if(page >= 1){
setTimeout(() => {
wx.hideLoading()
},800)
}
}
})
},
onReachBottom: function () {
wx.showLoading({
title:' '
})
this.getMoreList(this.data.page)
//
if(this.data.totalPage < this.data.page){
wx.showToast({
title: ' ',
})
}
}