uni-app上拉加载更多⑩

文章目录

十六、文章列表制作-上拉加载更多

一、使用 uni-load-more 插件

下载地址:https://ext.dcloud.net.cn/plugin?id=29

使用:

react 复制代码
<uni-load-more status="loading"></uni-load-more>
二、修改参数传递
  1. 前端添加 page 及 size 属性到云函数

  2. 云函数内进行返回值限制处理

    javascript 复制代码
    const list = await db
      .collection("article")
      .aggregate() // 使用聚合的形式进行数据的获取
      .match(matchObj) // 根据匹配条件进行数据返回
      .project({
        content: 0, // 本次查询不需要返回文章详情给前端
      })
      .skip(pageSize * (page - 1)) // 首页从0开始计算
      .limit(pageSize) // 每页最多返回多少条数据
      .end();
  3. 监听 scroll-view 的 scrolltolower 事件,触底时进行新的数据请求,当前的 page 值

  4. 前端调整数据处理将直接赋值变为追加数据

    javascript 复制代码
    // 填充数据时改变为追加数据
    let oldList = this.articleData[currentIndex] || [];
    oldList.push(...articleList);
    this.$set(this.articleData, currentIndex, oldList);
三、分类页数处理
  1. 创建每一个分类的存储对象,含 page 及加载状态

    javascript 复制代码
    loadData:{
    	page:1,
    	loading:loading
    }
  2. 处理数据全部加载完成状态

    react 复制代码
    // 判断当前后端没有返回数据处理
          if(!articleList.length) {
            this.loadData[currentIndex] = {
              loading:"noMore",
              page:this.loadData[currentIndex].page
            }
            this.$forceUpdate()
            return
          }
相关推荐
中国胖子风清扬3 天前
GPUI 在 macOS 上编译问题排查指南
spring boot·后端·macos·小程序·rust·uni-app·web app
码云数智-园园4 天前
uni-app 实现物流进度跟踪功能:从 UI 到数据驱动的完整方案
ui·uni-app
予你@。5 天前
UniApp + Vue3 实现 Tab 点击滚动定位(微信小程序)
微信小程序·小程序·uni-app
游戏开发爱好者85 天前
完整教程:App上架苹果App Store全流程指南
android·ios·小程序·https·uni-app·iphone·webview
予你@。6 天前
uni-app progress 组件使用详解
uni-app
iOS阿玮6 天前
春节提审高峰来袭!App Store 审核时长显著延长。
uni-app·app·apple
2501_916007476 天前
ios上架 App 流程,证书生成、从描述文件创建、打包、安装验证到上传
android·ios·小程序·https·uni-app·iphone·webview
2501_915106327 天前
iPhone 文件管理,如何进行应用沙盒文件查看
android·ios·小程序·https·uni-app·iphone·webview
2501_915921437 天前
Fastlane 结合 AppUploader 来实现 CI 集成自动化上架
android·运维·ci/cd·小程序·uni-app·自动化·iphone
云游云记7 天前
vue2 vue3 uniapp (微信小程序) v-model双向绑定
微信小程序·uni-app·vue