最近做项目 , 有一个左右滑动切换的需求 ,用了微信拓展组件tabs , 但是在用scroll-view做上拉加载更多数据这个功能的时候 , 发现只要加载出新的数据,scroll-view就会自动回到最顶部 , 后来发现可能是setData的时候导致页面重置, 于是去网上搜索到了一种局部刷新的方法 ,发现也不行 ,这里附上代码片段 ,我这里只用setData更新了第一行数据 ,也导致scrollview滚到了最顶部
https://developers.weixin.qq.com/s/GqsZOgmg7jhp
https://developers.weixin.qq.com/s/eD95Ejm87nh8
<mp-tabs tabs="{{tabs}}"
尝试过,tabs 里面的值如果上拉加载的时候,重新更新数值,我也遇到跟会导致滚动条自动回到顶部的情况。
解决方法是上拉加载的时候不改变 tabs 里面的值,显示内容可以通过其他 变量进行定义传参。
// sObj[`tabs[${activeTab}].num`] = count; //这样写会导致页面滑动到底部上拉又重新回到顶部
sObj[`tabsOther[${activeTab}]`] = count;
我也是醉了 这个哪里来的??难道不是this.data.tabs ???
https://developers.weixin.qq.com/s/GQ6P1jmS7NhH
你的写法没看懂,不过你是不是忘了这个步骤,数据合并了
var arry = that.data.arry;
arry = arry.concat(arryBack);
that.setData({
arry: arry
});