详细问题描述
nvue 的<list>组件 @loadmore 事件 在上拉加载第二页 后再下拉刷新,刷新过后 @loadmore事件就再也不会触发了,
<list>组件 @loadmore绑定的事件主要是在请求 参数页数自增达到上拉加载更多效果
<refresh>组件 @refresh 绑定的事件 是重置请求参数,然偶再次发动请求获取数据 达到刷新页面数据的效果
本以为自己写的代码有问题,结果在插件市场提供的几个模板都有这个问题。
使用:插件市场的 新闻模板 vue + nvue 修复新版闪退问题 也有这个问题
https://ext.dcloud.net.cn/plugin?id=315#detail
重现步骤
[步骤]
上拉加载到第二页,然后回到页面顶部进行下拉刷新页面 @refresh
[结果]
@loadmore事件就再也不会触发了,也就是不会再上拉加载跟多了,
[期望]
可继续触发@loadmore事件
[如果语言难以表述清晰,拍一个视频或截图,有图有真相]
IDE运行环境说明
HBuilderX
[IDE版本号]
2.4.6.20191210
[windows版本号]
win7家庭版
[mac版本号]
没测试
uni-app运行环境说明
[运行端是h5或app或某个小程序?]
[运行端版本号]
[项目是cli创建的还是HBuilderX创建的?如果是cli创建的,请更新到最新版cli再试]
[编译模式是老模板模式还是新的自定义组件模式?]
App运行环境说明
[Android版本号]
9.0
[iOS版本号]
[手机型号]
小米手机
[模拟器型号]
[QQ]
834023388
4 个回复
风云杭州
遇到同样的问题
风云杭州
直接用
就没有你说的问题。
如果是官方提供的新闻模版则是有问题的。
但直接用这种方式,有个新问题是 刷新完成后,刷新没有隐藏掉
DCloud_uniAD_HDX
更新HBuilderX 2.8.11+,已修复Android和ios下拉在某些情况下没有隐藏的问题
2020-09-15 20:18
小答
大哥,同样的问题,解决了没...
今天回复我了吗
官方模板copy 下来 玩玩看 应该木有这个问题
2020-09-15 13:38
小答
回复 w***@163.com: 官方的同样有问题呀,同样的问题,多次下拉和上拉后,就不走loadmore上拉回调了
2020-09-15 13:38
小答
回复 今天回复我了吗: 官方下拉时没有更新数据,如果下拉更新了数据,同样是loadmore回调不走,多次测试过了
2020-09-15 13:39
DCloud_uniAD_HDX
举例说明下
第一次显示为10条,每次下拉增加10条,当第一次上拉触发loadmore事件,记录数据长度为10,数据被更新为20后,记录的仍然是10
开始下拉刷新,数据又被重置10,此时进行上拉加载操作,数据长度没有发生变化,所以没有再次触发loadmore,需要在下拉刷新后重置loadmore,this.$refs["list"].resetLoadmore();
参考文档 https://uniapp.dcloud.net.cn/component/list
风云杭州
<list>
<refresh>
</refresh>
<cell>
</cell>
</list>
直接这样调用,貌似并不会出现你说的这个问题
2020-09-15 22:08
DCloud_uniAD_HDX
回复 风云杭州: 数据不满一屏幕的时候会出现,建议更新HBuilderX
2020-09-15 23:32
小答
回复 DCloud_uniAD_HDX: this.$refs["list"].resetLoadmore()这个方法若是在swiper for循环下的list使用,会报出:is a not function
2020-09-15 23:51
DCloud_uniAD_HDX
回复 小答: 只是举个例子,循环的时候改下ref的值
2020-09-17 10:39
小答
回复 DCloud_uniAD_HDX: 都改了,每个ref的值都不一样的,resetLoadmore的时候也是那些ref,你们可以在官方的demo中测试,(官方的demo中下拉刷新没有更新值,更新一下就不行了,加上ref再resetLoadmore就是not function)
2020-09-17 14:53
守护
回复 DCloud_uniAD_HDX: 我也遇到这个问题,请问如何解决?
2020-10-11 01:22
守护
回复 DCloud_uniAD_HDX: resetLoadmore()这个方法若是在swiper for循环下的list使用,会报出:is a not function
2020-10-11 03:59