讲一下用mescroll遇到的一个坑, 就是上拉加载死活触发不了, 折腾了一下午才找到原因,
开始我以为是css样式设置的问题, 于是按作者在问答提供的思路来回试了好多遍, 都不行.
而下拉刷新却可以正常运行, 但所有数据加载完后, 却不显示无更多数据提示
于是我想先把提示问题解决掉, 然后在这儿issue下找到答案, #135
即由于noMoreSize属性默认值为5, 当总数据值少于5并加载完时, 是不会显示 无更多数据提示的,
把noMoreSize属性设置为0, 则无论加载完的总数据多少条, 都会显示这条信息.
把noMoreSize属性设置为0后, 然后我们再回头看上拉加载无法触发的问题,
这时页面加载后会看到列表底部出现 无更多数据 提示,
提示虽然出现了, 但奇怪的是, 我用的mock数据,
机制是每次请求传一条数据, 为什么第一次请求成功后就显示 无更多数据.
于是回去翻看文档, 文档页找到这段话:
//结束上拉加载 curPageData.length必传的原因:
1.使配置的noMoreSize 和 empty生效
2.判断是否有下一页的首要依据: 当传的值小于page.size时,则一定会认为无更多数据.
比传入的totalPage, totalSize, hasNext具有更高的判断优先级
3.当传的值等于page.size时,才会取totalPage, totalSize, hasNext判断是否有下一页
传totalPage, totalSize, hasNext主要目的是避免方法四描述的小问题
这是插件判断是否有更多数据的机制, 尤其是首要依据'当传的值小于page.size时,则一定会认为无更多数据', 而因为我mock的数据每次请求一条, 就是说curPageData.length为1, 但插件的默认page.size为10, 根据首要判断依据, 第一次请求后就被插件判断为无更多数据了, 于是将配置项里的page.size设置为ajax每次请求的列表项返回数, 就可解决了. 我这里把size改为1就行了.
以上是我用这个插件的爬坑之旅, 如果你在按照问答给的方法仍无法解决上拉无法加载的问题, 可以注意下noMoreSize与page.size选项的配置, 按照上面的方法试着解决一下.
@mescroll 建议把noMoreSize与page.size的默认值问题导致上拉加载无法触发更新到Q. 为什么我写的上拉触发不了 或者 列表无法滑动 ?问题的解答下, 或许能帮助一些人避免再踩坑.
讲一下用mescroll遇到的一个坑, 就是上拉加载死活触发不了, 折腾了一下午才找到原因,
开始我以为是css样式设置的问题, 于是按作者在问答提供的思路来回试了好多遍, 都不行.
而下拉刷新却可以正常运行, 但所有数据加载完后, 却不显示
无更多数据提示于是我想先把提示问题解决掉, 然后在这儿issue下找到答案, #135
即由于noMoreSize属性默认值为5, 当总数据值少于5并加载完时, 是不会显示
无更多数据提示的,把noMoreSize属性设置为0, 则无论加载完的总数据多少条, 都会显示这条信息.
把noMoreSize属性设置为0后, 然后我们再回头看上拉加载无法触发的问题,
这时页面加载后会看到列表底部出现
无更多数据提示,提示虽然出现了, 但奇怪的是, 我用的mock数据,
机制是每次请求传一条数据, 为什么第一次请求成功后就显示
无更多数据.于是回去翻看文档, 文档页找到这段话:
这是插件判断是否有更多数据的机制, 尤其是首要依据'当传的值小于page.size时,则一定会认为无更多数据', 而因为我mock的数据每次请求一条, 就是说curPageData.length为1, 但插件的默认page.size为10, 根据首要判断依据, 第一次请求后就被插件判断为无更多数据了, 于是将配置项里的page.size设置为ajax每次请求的列表项返回数, 就可解决了. 我这里把size改为1就行了.
以上是我用这个插件的爬坑之旅, 如果你在按照问答给的方法仍无法解决上拉无法加载的问题, 可以注意下noMoreSize与page.size选项的配置, 按照上面的方法试着解决一下.
@mescroll 建议把noMoreSize与page.size的默认值问题导致上拉加载无法触发更新到
Q. 为什么我写的上拉触发不了 或者 列表无法滑动 ?问题的解答下, 或许能帮助一些人避免再踩坑.