Taro中如何正确监听页面滚动事件?
我在Taro开发微信小程序时,想监听页面的滚动事件,但用onScroll好像没生效,文档里也没找到明确说明。试了在页面config里加enablePullDownRefresh也不行。
这是我的代码:
export default {
onScroll(e) {
console.log('滚动了', e.detail.scrollTop)
},
config: {
navigationBarTitleText: '测试页'
}
}
是不是Taro里监听滚动得用别的方法?比如用useReady里绑定scroll-view?但我不想额外套一层scroll-view啊……
你那个写法改成这样就行:
几个关键点:
1. 要用onPageScroll而不是onScroll,这是Taro的API命名规则
2. 参数e的结构和原生小程序不一样,直接取e.scrollTop就行
3. 不需要额外加enablePullDownRefresh配置,除非你真要下拉刷新
不用套scroll-view也能监听,不过要注意这个方法只能监听整个页面的滚动,如果只是监听某个局部区域的滚动,那还是得用scroll-view组件。