文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

怎么使用Vant实现数据分页和下拉加载

2023-07-02 14:13

关注

本篇内容主要讲解“怎么使用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/vant@2.11/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/vue@2.6/dist/vue.min.js"></script><script src="https://cdn.jsdelivr.net/npm/vant@2.11/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>

主要三个属性

怎么使用Vant实现数据分页和下拉加载

怎么使用Vant实现数据分页和下拉加载

注意:

怎么使用Vant实现数据分页和下拉加载

vant上拉加载更多,下拉刷新

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>

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实现数据分页和下拉加载”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯