1.html
<van-pull-refresh v-model="isLoading" @refresh="onRefresh">
<van-list
v-model="loading"
:finished="finished"
:immediate-check="false"
finished-text="没有更多了呦"
@load="onLoad"
>
</van-list>
</van-pull-refresh>
2.js
return {
isLoading: false,
loading: false,
page: 1,
limit: 10,
finished: false,
total: 0, // 总共的数据条数
List: [],
}
getHistory() {
const historyData = {
page: this.page,
limit: this.limit
}
return new Promise((resolve, reject) => {
getHistory(historyData)
.then(res => {
if (res.code === 0) {
console.log(res, '历史记录')
this.total = res.data.total
this.finished = !res.data.hasNext
if (res.data.list && res.data.list.length > 0) {
const tempList = res.data.list
// console.log(this.page)
if (this.page > 1) {
this.list = this.list.concat(tempList)
} else {
this.list = tempList // 第一次加载
}
this.page += 1
} else {
this.list = []
}
this.loading = false
resolve()
}
})
.catch(error => {
reject(error)
})
})
},
onLoad() {
this.getHistory()
},
onRefresh() {
this.page = 1
setTimeout(() => {
this.getHistory()
Toast('刷新成功')
this.isLoading = false
}, 1000)
},