vant-list @load加载问题

vant-list @load加载 不断请求接口问题个人解决方案

  1. 在vant-list 标签中配置offset属性,默认值300太大了(建议在30左右)
  2. 有配置van-pull-refresh使用的, 在vant-list 中 设置 :immediate-check="false"
  3. 设定一个变量,例如:isLoad,在每次请求方法时拦截多余的请求
async pageMore() {
                if (!this.isLoad) {
                    this.isLoad = true;
                    this.loadStart();
                    await this.$postData("xxx", this.queryParam, {}).then((res) => {
                        if (res.status === 200) {
                            res.data.records.forEach(v => {
                                this.dataList.push(v);
                            });
                            const list = res.data.records;
                            if (list === null || list.length === 0 ||
                                this.queryParam.size * this.queryParam.current >= res.data.total
                                || this.dataList.length >= res.data.total) {
                                this.finished = true;
                            }
                            this.queryParam.current++;
                        } else {
                            this.$toast.fail(res.msg);
                        }
                    }).catch(e => {
                        this.$toast.fail(e.message);
                    }).finally(() => {
                        // this.refreshing = false;
                        this.loadEnd();
                        this.isLoad = false;
                    });
                }
            }

目前没找到和想到更好的方案,有哪位朋友有更好的方案,请评论区说一下哈。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值