vue3 使用vant框架的van-list 上拉加载用法

2023-11-16

  <van-list
        v-model:loading="loading"
        :finished="finished"
        finished-text="没有更多了"
        @load="onLoad"
      >
     内容-----
</van-list>


  const page = ref({
    pageNum: 0,
    pageSize: 2,
  });
  const loading = ref(false);
  const finished = ref(false);

//第一步
 const onLoad = () => {
    page.value.pageNum += 1;
    getList();
  };


//最后

//统一获取分页
  const getList = async () => {
    let date = customDateRange.value ?? dataObj.value;
    let pam = {
      ...date,
      ...page.value,
      deptCode: user.deptCode,
      state: value1.value,
    };

    const res = await fnName(pam);
    let rows = res.records;
    let total = res.total; //数据总条数

    if (rows == null || rows.length === 0) {
      loading.value = false; // 关闭加载状态
      finished.value = true; // 加载结束
      return;
    }
    loading.value = false; // 关闭加载状态
    list.value = list.value.concat(rows); //合并数组

    // 如果合并之后的数组长度大于返回的数据总条数
    if (list.value.length >= total) {
      finished.value = true; // 加载结束
    }
  };

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

vue3 使用vant框架的van-list 上拉加载用法 的相关文章

随机推荐