当前位置:网站首页>怎么使用Vant实现数据分页和下拉加载
怎么使用Vant实现数据分页和下拉加载
2022-06-30 02:38:00 【亿速云】
怎么使用Vant实现数据分页和下拉加载
本篇内容主要讲解“怎么使用Vant实现数据分页和下拉加载”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用Vant实现数据分页和下拉加载”吧!
Vant-ui的van-list实现数据分页加载
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>vant数据分页,下拉加载</title> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/lib/index.css" rel="external nofollow" /></head><style></style><body> <div id='app'> <van-list class="lazy" v-model="loading" :finished="finished" finished-text="没有更多了" @load="onLoad" :immediate-check="false"> <div v-for="(item,index) in list" :key="index">{{item}}</div> </van-list> </div></body><script src="https://cdn.staticfile.org/jquery/2.1.4/jquery.min.js"></script><script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/vue.min.js"></script><script src="https://cdn.jsdelivr.net/npm/[email protected]/lib/vant.min.js"></script><script> var Vue = new Vue({ el: '#app', data: { list: [], page: 1, loading: false, finished: false, num: 0 }, created() { this.getList() }, mounted() { }, methods: { // 请求公共方法 ajax(url, params, cb) { $.ajax({ type: 'post', url: url, data: params, dataType: "json", success: function (response) { cb(response) } }); }, onLoad() { this.getList() }, getList() { let that = this that.ajax('url', { kay: 'value' }, function (res) { if (res.errcode != 0) { that.$toast(res.msg) return false } if (that.page == 1) { that.list = res.data.list } else { that.list = that.list.concat(res.data.list) } that.loading = false; that.page++ //最后一次请求返回的数据为空或小于10条,不在请求,finished = true //根据业务需求更改 if (res.data.list.length == 0 || res.data.list == null || res.data.list.length < 10) { that.finished = true return } }) } } })</script></html>
主要三个属性


注意:
v-model每次数据加载完成要置为falsefinished置为false后将不再触发下拉加载immediate-check置为false后,每次进入页面将不会触发load方法,防止进入页面多次加载

vant上拉加载更多,下拉刷新
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) },到此,相信大家对“怎么使用Vant实现数据分页和下拉加载”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
边栏推荐
- Global and Chinese market of wind energy equipment logistics 2022-2028: Research Report on technology, participants, trends, market size and share
- Differences among digicert, SECTIONO and globalsign code signing certificates
- Jupyter notebook displays a collection of K-line graphs
- Raki's notes on reading paper: named entity recognition as dependency parsing
- Global and Chinese market of relay lens 2022-2028: Research Report on technology, participants, trends, market size and share
- 并发请求下如何防重复提交
- Quick sort
- How to use SMS to deliver service information to customers? The guide is here!
- Wechat applet page Jump and parameter transfer
- 打造創客教育中精湛技藝
猜你喜欢

Unity3d ugui force refresh of layout components

Time complexity analysis

2022年7月深圳地区CPDA数据分析师认证

隐藏在科技教育中的steam元素

1380. lucky numbers in matrices

Wechat applet page Jump and parameter transfer

Call collections Sort() method, compare two person objects (by age ratio first, and by name ratio for the same age), and pass lambda expression as a parameter.

FDA mail security solution

A quick look at the statistical data of 23 major cyber crimes from 2021 to 2022

What is a self signed certificate? Advantages and disadvantages of self signed SSL certificates?
随机推荐
什么是X.509证书?X.509证书工作原理及应用?
2.8 【 weight of complete binary tree 】
How to prevent phishing emails? S/mime mail certificate
Time complexity analysis
五个最便宜的通配符SSL证书品牌
Can autojs code be encrypted? Yes, display of autojs encryption skills
matlab代码运行教程(如何运行下载的代码)
What should academic presentation /ppt do?
Heap sort
迅為恩智浦iTOP-IMX6開發平臺
AutoJS代碼能加密嗎?YES,AutoJS加密技巧展示
Unity timeline data binding
[论]【DSTG】Dynamic SpatiotemporalGraph Convolutional Neural Networks for Traffic Data Imputation
Steam elements hidden in science and Technology Education
重磅来袭--UE5的开源数字孪生解决方案
How to display all keys through redis cli- How to show ALL keys through redis-cli?
学术汇报(academic presentation)/PPT应该怎么做?
What are the three paradigms of database
Two methods of SSL certificate format conversion
Raki's notes on reading paper: Leveraging type descriptions for zero shot named entity recognition and classification