
..重复加载请求
1.页面布局

2.data数据

3.js onload 图中loadData里面的request是对axios进行了封装

4.console数据打印 load方法一开始执行了,finished已经为true的情况下还是继续执行,请求重复了几十次

找不到产生的原因了,请大神看下是否是组件有问题,官方demo是没有问题,但是一换成接口请求数据就出错了
查下你的onloads方法是怎么实现的
List内部对scroll好像没有限频
导致一滚动起来loadData各种触发
finished为true时仍然触发的还需要再看下
看错了,上面写的有问题,请求中应该不会多次触发,最好还是贴下jsfiddle才好分析
尝试过贴jsfiddle,但是在线的jsfiddle无法转义vant的组件,能否请您这边贴一个list组件接口demo
finished为true还是继续请求的原因找到了,是我自己没有考虑到请求异步的情况,请两位答复者原谅这个失误,还有一个bug就是页面开始渲染的时候 ,还没有发生滚动事件的时候,所有的page都请求完了,这个还没找到原因
参考文档中的 immediate-check 属性
还有一个bug就是页面开始渲染的时候 ,还没有发生滚动事件的时候,所有的page都请求完了,?请问是如何解决的?

你是不是 van-list组建和 tab组建同时使用? 这两个组件不能同时使用,在一起使用便会出现一进入页面所有数据全部请求完毕,你可以试试,我这边去掉tab组件,list组件就正常了
@maoqiwu 我现在就是出现你说的这个情况,有什么解决方案吗
@ maoqiwu 有什么解决方案吗?
我也是这个问题
以上了数据就全部加载了
是不是有可能默认offset为300太大了,数据不多所以一次全加载了
@ibmsoft @xiaojia21190 @lsw1990 很抱歉 才看到,我这边出现这个问题是因为 list组件 和 tab组件同时使用,去掉tab组件以后list组件就正常了,tab效果我是自己写了一个假tab的
今天我也碰到这个问题。我是这么解决的:
@chokingwin 你好,可以把你的代码贴出来看下吗?
@zzw118 晚点,我整理一下发到 jsfiddle 上
@chokingwin 你好,我加上了immediate-check 设置成 false,这样是请求了第一页,然后我再向上滑动加载时候就直接把剩下的页全部加载了,请问这样怎么解决哇
我也遇到同样问题,第一次onload把所有page都加载完了,太多请求。
@chokingwin 你好,我加上了immediate-check 设置成 false,这样是请求了第一页,然后我再向上滑动加载时候就直接把剩下的页全部加载了,请问这样怎么解决哇
好像直接在标签上设置为false无效 要用v-bind绑定data设置
针对第一次就显示完全部数据的问题:
首先可以通过list组件的immediate-check属性关闭初始化时立即执行滚动位置检查(该属性直接设置false无效,要与data绑定);
其次一次性把数据全部加载的问题在于请求成功了但是返回的数据为空,这时候把finished的属性置为true就行了
可参考官方文档:https://youzan.github.io/vant/#/zh-CN/list
@ibmsoft @xiaojia21190 @lsw1990 很抱歉 才看到,我这边出现这个问题是因为 list组件 和 tab组件同时使用,去掉tab组件以后list组件就正常了,tab效果我是自己写了一个假tab的
感谢大佬,同样的问题, 一直以为是我自己哪里弄错了,太难了,还是自己造,官方限制太死了
Most helpful comment
你是不是 van-list组建和 tab组建同时使用? 这两个组件不能同时使用,在一起使用便会出现一进入页面所有数据全部请求完毕,你可以试试,我这边去掉tab组件,list组件就正常了