van-list的使用

html 复制代码
<van-list
          v-if="joblist && joblist.length > 0"
          v-model:loading="loading"
          :finished="finished"
          :immediate-check="false"
          finished-text="没有更多了"
          @load="onLoad"
        >
js 复制代码
// 加载
const loading = ref(false);
// 全部加载完毕
const finished = ref(false);

// 加载更多触底事件
const onLoad = async () => {
  if (joblist.value.length < total.value) {
    searchform.value.pageNum++;
    await getjoblist();
    loading.value = false;
  } else {
    loading.value = false;
    finished.value = true;
  }
};

const getjoblist = async () => {
  const res = await queryJoblist(searchform.value);
  if (res.code === 200) {
    total.value = res.total;
    //使用concat将新数据和原来的列表拼接在一起,不能直接赋值
    joblist.value = joblist.value.concat(res.rows);
  }
};

注意!!!
要使用concat将新数据和原来的列表拼接在一起,不能直接赋值,否则每次请求后的页面高度都是在页面底部,导致一直触发onLoad方法请求接口多次

相关推荐
乐闻x7 分钟前
提升 React 应用性能:使用 React Profiler 进行性能调优
前端·javascript·react.js·性能优化
gotoc丶2 小时前
堆排序:力扣215.数组中的第K个大元素
javascript·数据结构·算法·leetcode·排序算法
NaZiMeKiY2 小时前
HTML5前端第二章节
前端·html·html5
天若有情6732 小时前
深入浅出:HTML 中 <a> 标签嵌入链接教程
前端·html
烂蜻蜓2 小时前
HTML 样式之 CSS 全面解析
前端·css·html
冬冬小圆帽2 小时前
Webpack 优化深度解析:从构建性能到输出优化的全面指南
前端·webpack·node.js
大龄大专大前端4 小时前
JavaScript闭包的认识/应用/原理
前端·javascript·ecmascript 6
字节源流4 小时前
【SpringMVC】常用注解:@SessionAttributes
java·服务器·前端
肥肠可耐的西西公主4 小时前
前端(vue)学习笔记(CLASS 4):组件组成部分与通信
前端·vue.js·学习
烛阴4 小时前
JavaScript 函数绑定:从入门到精通,解锁你的代码超能力!
前端·javascript