vant列表滚动加载

1:html @load="onLoad" offset="30"

复制代码
 <van-list
      v-model="loading"
      :finished="finished"
      finished-text="没有更多了"
      @load="onLoad"
      offset="30"
    >
      <div class="hotel_box">
        <div class="box" v-for="item in list" :key="item.id" @click="item.numbers > 0 ? $router.push(`/goDetails?id=${item.id}`) : ''">
          <div>
            <van-image fit="cover" lazy-load :src="item.stu && item.stu.image_url ? item.stu.image_url : ''"/>
            <div class="repair" v-if="item.numbers === 0">
              <span>补货中</span>
            </div>
            <div class="box1">
              <span class="name">{{ item.stu.name }}</span>
              <span class="desc">{{ item.stu.desc || "..." }}</span>
              <span class="price">¥{{ item.price }}</span>
            </div>
          </div>
        </div>
      </div>
    </van-list>

2:methods onLoad()

复制代码
data () {
    return {
      // 默认列表
      list: [],
      loading: false,
      finished: false,
      page: 1,
      pageSize: 8,
      rowCount: ''
    }
  },
 methods: {
    // 获取商品
    getHotelList () {
      this.loading = true
      this.finished = false
      const applets = JSON.parse(localStorage.getItem('applets'))
      getList({
        hotel_id: applets.hotelId,
        hotel_group_id: applets.hotel_group_id,
        end_datetime__gt: dateFmt.dateFormat(new Date()),
        page_size: this.pageSize,
        page: this.page
      }).then(res => {
        if (res.message === 'success') {
          this.rowCount = res.data.count
          //  将数据放入数组
          this.list.push(...res.data.results)
          this.loading = false // 加载状态结束
          this.list.length >= this.rowCount ? (this.finished = true) : ''
          // 如果list长度大于等于总数据条数,数据全部加载完成
          // this.finished = true 结束加载状态
        } else {
          this.loading = false // 结束加载状态
          this.finished = true // 加载状态结束
        }
      })
    },
    onLoad () {
      this.getHotelList()
      this.page++ // 分页数加一
    },
 }
相关推荐
vortex527 分钟前
RDP 启用多用户会话(当前用户无感知)
windows·网络安全·渗透测试
私人珍藏库6 小时前
WiFi密码B破器-密码查看器、可跑字典-免费无广
windows·wifi·工具
淮北49413 小时前
windows11配置wsl安装ubuntu20.04
windows·学习·ubuntu·wsl
shykevin15 小时前
uni-app x开发商城系统,商品列表点击跳转至商品详情页
windows·uni-app
std8602117 小时前
微软解除 Win11 限制,“毛玻璃”效果将无处不在
windows
csdn_aspnet17 小时前
如何在 Mac、Ubuntu、CentOS、Windows 上安装 MySQL 客户端
linux·windows·mysql·macos·centos
24kHT17 小时前
conda以及Jupyter notebook的使用
windows·jupyter·conda
alphaTao1 天前
LeetCode 每日一题 2025/11/3-2025/11/9
windows·leetcode
习惯就好zz1 天前
WSL2 安装Ubuntu卡在安装进度0%无响应问题解决
linux·windows·ubuntu·wsl·wsl2
仰望—星空1 天前
MiniEngine学习笔记 : CommandListManager
c++·windows·笔记·学习·cg·direct3d