解决 微信小程序 滚动 事件穿透 问题

场景

业务开发中经常会出现弹窗的情况,如果弹窗是静态的,使用catchtouchmove即可解决滚动穿透问题,但是总会有些复杂的场景,比如:弹窗中也需要滚动,使用catchtouchmove会使内外都无法滚动。

解决

使用微信官方提供的 page-meta 组件
官方文档:

https://developers.weixin.qq.com/miniprogram/dev/component/page-meta.html

示例代码:

<page>
	<!-- page-meta 必须置顶 -->
	<page-meta page-style="overflow: {{isScroll? 'hidden' : 'visible'}}" />
	<view>
		页面内容
	</view>
	<view>
		弹窗
	</view>
</page>

当弹窗展示时,将isScroll赋值为true即可。这样页面无法滚动,弹窗内容可正常滚动。


版权声明:本文为gongzuoyongde原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。