详细问题描述
[内容]
$.each(document.querySelectorAll('.mui-slider-group .mui-scroll'), function(index, pullRefreshEl) {
$(pullRefreshEl).pullToRefresh({
down: {
callback: function() {
var self = this;
dataLayer(function(isDATA){
++(changeType.parameter[changeType.isUid].page);
setTimeout(function() {
self.endPullDownToRefresh(isDATA);
self.endPullUpToRefresh(!isDATA);
self.refresh(isDATA)
}, 300);
});
}
},
up: {
callback: function() {
var self = this;
dataLayer(function(isDATA){
console.log("UP isDAT=>",isDATA)
++(changeType.parameter[changeType.isUid].page);
setTimeout(function() {
self.endPullUpToRefresh(!isDATA);
}, 300);
});
}
}
});
});
重现步骤
[步骤] 结合案例步骤,使用分页获取后端数据,通过获取的数据和自己的请求参数数据个数对比,isDATA判断是否还有数据。
[结果]
启用一个tab正常,但是有多个tab项的时候,第一个tab请求显示上拉显示更多,这个时候切换到tab第二个,并下拉到没有更多数据,发现,会影响到第一个tab显示的内容,一起显示为没有更多数据了
[期望]
希望解决多个tab下,不会导致第二个tab下拉到没有更多数据时,不影响第一个tab的提示和上下拉刷新事件。可以通过上传的pullrefresh_with_tab_BUG_DEMO 文件下,使用node data.js启动查看案例,数据库安装一下,都在附件中了
运行环境
[系统版本]
[浏览器版本]
[IDE版本]
[mui版本]
附件
[代码片段]
[安装包]
联系方式
[QQ]
2216736197
[电话]
w***@163.com (作者)
根据你给的DEMO问题并未解决,首先,你的下拉刷新是无限添加li,这样测比较难测,但还是看出问题来了,当你上拉到显示没有更多数据的时候,这个时候下拉,那个没有更多数据根本没有更新提示,我的是想重置成第一页,也就是一开始进来的页面数据,
第二,切换到tab2.上拉刷新,直接显示没有更多数据了。
我的DEMO在MUi上下拉组件中调用的方式,是否有问题,可以进一步验证,根据你的DEMO2来验证看,发现我的demo启动服务后,根据down只启动self.endPullDownToRefresh();,这样在上拉到没有更多数据的时候,就没办法下拉成初始界面了,与需求不符合。
2017-12-27 19:37