uni-app <movable-view>和<scroll-view>冲突
uni-app <movable-view>和<scroll-view>冲突
| 开发环境 | 版本号 | 项目创建方式 |
|---|---|---|
| Windows | win10 | HBuilderX |
产品分类:uniapp/App
PC开发环境操作系统:Windows
HBuilderX类型:正式
HBuilderX版本号:3.1.22
手机系统:Android
手机系统版本号:Android 10
手机厂商:魅族
手机机型:魅族16th plus
页面类型:vue
打包方式:云端
示例代码:
`更多关于uni-app <movable-view>和<scroll-view>冲突的实战教程也可以访问 https://www.itying.com/category-93-b0.html
1 回复
更多关于uni-app <movable-view>和<scroll-view>冲突的实战教程也可以访问 https://www.itying.com/category-93-b0.html
在uni-app中,<movable-view>和<scroll-view>同时使用时确实容易产生手势冲突,这是因为两者都处理触摸事件导致的常见问题。
解决方案:
- 使用
@touch事件手动控制 通过给movable-view添加@touchstart、@touchmove、@touchend事件,在触摸开始时阻止事件冒泡:
handleTouchStart(e) {
e.stopPropagation()
// 其他逻辑
}
- 设置
scroll-view的滚动方向 明确指定scroll-view的滚动方向,避免与movable-view的拖动方向冲突:
<scroll-view scroll-y="true" style="height: 100vh">
<movable-area>
<movable-view>可拖动内容</movable-view>
</movable-area>
</scroll-view>
- 使用条件判断控制交互 根据业务逻辑,在特定条件下禁用其中一个组件的交互:
data() {
return {
scrollEnabled: true,
movableEnabled: true
}
}

