小程序scroll-view加载更多

小程序上拉加载更多数据,使用scroll-view的bindscrolltolower属性来处理事件。这一点官方文档说的很清楚,可是加上这个属性后,就出现了两个问题。不知是bug呢还是其他。

问题1:处理事件的方法就是不执行。

问题2:解决完问题1基础上,存在处理事件的方法执行多次的情况。

解决办法:针对问题1,必须要给scroll-view增加一个height。

说到height呢,这里微信提供了一个比较人性化的API,可以写在.js内的onLoad方法内获取。如下:

wx.getSystemInfo({

          success:function(res) {

              that.setData({ scrollHeight : res.windowHeight

              });

        }

  });

该API可以直接获取到关于正在使用设备的所有信息,这时候拿到height了,可以这么干~类似于style='height: {{scrollHeight}}px; 如果你就想给一个固定的高度什么的~哈哈,这样显得好固执哦~有现成的api干嘛不用。需要注意的是,把height写在.wxss布局样式内是无效的。这个时候就可以调用bindscrolltolower定义的方法了,针对这一点官方文档竟然没说。。。

那么接下来问题又来啦。该方法是调用了,但是存在调用多次。不难发现官方文档还有一个属性:lower-threshold,给出的说明是:距底部/右边多远时(单位px),触发 scrolltolower 事件,默认是50 ,Number类型。那就好办了,我们给它设置小一点。类似于lower-threshold="1" ,这样问题2也就可以解决了。

仅此记录一下微信小程序scroll-view的一点小问题。2017.12.12

你可能感兴趣的:(小程序scroll-view加载更多)