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方法请求接口多次

相关推荐
allk552 小时前
List && Map在安卓中的优化
android·数据结构·性能优化·list·map
Zyx20072 小时前
HTML5 敲击乐(2):从静态页面到移动端适配的完整实践
前端
有意义2 小时前
从HTML敲击乐了解开发流程
javascript
烟袅2 小时前
JavaScript 中的 null 与 undefined:你真的搞懂它们的区别了吗?
javascript
有点笨的蛋2 小时前
“花”点心思学代理:JavaScript中的对象与中介艺术
javascript
今禾2 小时前
流式输出深度解析:从应用层到传输层的完整技术剖析
前端·http·面试
Hilaku2 小时前
一个函数超过20行? 聊聊我的函数式代码洁癖
前端·javascript·架构
白兰地空瓶2 小时前
# 从对象字面量到前端三剑客:JavaScript 为何是最具表现力的脚本语言?
前端
不会算法的小灰2 小时前
JavaScript 核心知识学习笔记:给Java开发者的实战指南
javascript·笔记·学习