微信小程序scrollView的bindscrolltolower不触发的情况

在微信小程序中,ScrollView的bindscrolltolower事件有时无法正常触发。为确保其工作,需确保page样式设置为100vh,并且ScrollView也要设置为100vh。这两个条件缺一不可,正确设置后可以避免bindscrolltolower不生效的状况。

scrollView的bindscrolltolower是实现滚动加载的方法,如果不注意会发生无法触发的情况,需要两个条件

1.page未设置成100vh,在app.wxss设置

page{
 height:100vh
}

2.scrollView设置成100vh

综合两个条件就不会出现bindscrolltolower无法触发的情况

### 微信小程序实现滚动列表方法 在微信小程序中,`scroll-view` 是用于创建可滚动区域的关键组件[^2]。通过设置 `scroll-x` 或者 `scroll-y` 属性来控制水平或垂直方向上的滚动行为。 #### scroll-view 基本属性配置 为了使列表能够正常滚动,需合理设定 `scroll-view` 的宽高样式以及启用相应的滚动轴: ```html <scroll-view class="scrollView" scroll-y> <!-- 列表项 --> </scroll-view> ``` 对于高度自适应的情况,可以通过绑定页面计算后的变量给定具体的像素值[^3]: ```html <!-- WXML 文件片段 --> <scroll-view class="scrollView" scroll-y style="height: {{scrollHeight}}px;"> <!-- 列表内容 --> </scroll-view> // JS文件内定义data中的scrollHeight字段,并在其生命周期函数里初始化该数值 Page({ data:{ scrollHeight: '' }, onLoad:function(){ this.setScrollViewHeight(); }, setScrollViewHeight() { const query = wx.createSelectorQuery() let that = this; query.select('.container').boundingClientRect(function (rect){ if(rect!=null){ that.setData({scrollHeight: rect.height}); } }).exec() } }) ``` 当涉及到更复杂的交互逻辑比如懒加载更多数据时,则可以在监听滚动事件的同时判断是否接近底部从而触发新的网络请求。 #### 滚动到底部自动加载更多案例 ```javascript pageScrollToLower(e) { console.log('到达底部'); // 这里可以发起下一页的数据请求... } ``` 配合上述代码,在WXML模板中加入如下监听器即可生效: ```html <scroll-view bindscrolltolower="pageScrollToLower"> ... </scroll-view> ``` 以上就是有关于如何利用官方提供的API构建一个基本的滚动列表解决方案。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值