element无限滚动的用法

InfiniteScroll 无限滚动的用法

最近也是项目遇到了这种问题哈,数据过多 然后进行遍历 页面会非常卡顿 所以就用到了这个无限滚动 这样的话就可以避免页面卡顿 不妨碍用户做其他的操作 我直接上代码吧

1.给需要加滚动的地方加上加载方法 load

 <div
     class="infinite-list"
     v-infinite-scroll="load"
     style="overflow: auto; max-height: 600px;width:90%; border: 1px solid #ddd;padding:0 16px"
 >
    <div
        v-for="(item, index) in formData.fhckList"
        :key="index"
         class="infinite-list-item"
     >
       <div style="fonnt-size: 20px; font-weight: 900">
            {{ item.ware_name }}
       </div>
    </div>
 </div>

2.声明从几开始

data(){
   return{
      count:9
   }
}

3.方法

  //懒加载试一下
    load() {
      // console.log("懒加载打印一下要遍历的数组", this.formData.fhckList);
      // console.log("最后的count", this.count);
      // console.log(this.tabledatas);
      this.count += 1;
      // console.log(this.tabledatas[this.count]);
      if (this.formData.fhckList.length > 0 && this.tabledatas[this.count]) {
        this.formData.fhckList.push(this.tabledatas[this.count]);
      }
    },

4.获取到表格的数据

 //1.这个是干啥的
    selectData() {
      this.count = 9;
      if (this.formData.selecttypes) {
        let params = {
          attribute_id: this.formData.selecttypes,
          platform_id: this.formData.platform_id,
          country_id: this.formData.platform_site,
        };
        console.time();
        warewareList(params).then((res) => {
          res.data.data.map((row) => {
            row.rule_level = "0";
            row.trans_type = "0";
            row.is_guahao = "0";
            row.transTypes = [];
          });
          setTimeout(() => {
            // this.formData.fhckList = res.data.data;
            this.tabledatas = res.data.data;
            this.formData.fhckList = res.data.data.slice(0, 10);
          }, 1000);
          // console.log("111111111111x", this.formData.fhckList);
        });
        console.timeEnd();
      } else {
        this.formData.fhckList = [];
      }
    },

总体来说 我的思路就是 先加载10条数据 然后随着滚动条的滚动每次都往表格里面push进去一条 这样 就不会造成卡顿 不影响用户使用 如果有更好的方法 可以分享一下 我也可以学习一下

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值