VUE上拉加载更多,基于vant框架

本文介绍了如何在Vue项目中使用vant框架实现上拉加载更多的功能。首先,在data中定义初始状态;接着,将需要分页的内容用van-list组件包裹;然后,获取数据并设置触发加载更多所需的参数;最后,确保首次加载的数据足以填充一屏幕,以避免在数据不足一页时自动触发onload事件。
摘要由CSDN通过智能技术生成

1.在data中定义初始的状态

	  loading: false,
      finished: false,
      offset:100,//滚动条与底部距离小于 offset 时触发load事件
      page:1

2.在需要分页的地方,用van-list进行包裹

  <van-list v-model="loading" :finished="finished" finished-text="没有更多了" @load="onLoad">
      <van-tabs color="#0197ee" @click="handleClick">
          <van-tab title="XXX">
          </van-tab>
          <van-tab title="XXX">
          </van-tab>
      </van-tabs>
  </van-list>

3.获取数据

    getList() {
      this.$fetchPost("*****/*****", {
        user_id: this.userId,
        page_num: this.page,
      })
        .then(response => {
          if (response.data.code == 1 && response.data.data.length > 0) {
          	// 加载状态结束如果请求到数据,将数据拼接在一起
            this.kindergartenList.push(...response.data.data);
            // 加载状态结束
            this.loading = false;
          } else {
            this.loading = false;
            this.finished = true;
          }
        })
        .catch(res => {
          return false;
        });
    },

4.设置触发需要的参数,同时调用请求数据的函数

onLoad() {
      this.page++;
      this.getList();
    },

需要注意:
一般默认情况,页面请求的数据,不足一页是,会自动触发onload事件,所以尽量保证第一屏数据足够。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值