滑动手势识别
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_f1b049da/po2026051。
技能介绍
为什么需要手势识别
在移动端应用中,用户经常需要通过左右滑动来切换卡片、预览附件或触发返回操作。例如,客户卡片的左右滑动切换、Demo附件的左右翻阅,或者简易的手势返回功能。然而,实现这些功能时,开发者常常面临手势冲突、内存泄漏等问题。
核心能力与实现步骤
- 依赖管理:引入
hammerjs(可选@types/hammerjs),确保手势识别的稳定性。 - 容器挂载:在卡片或列表容器上初始化Hammer实例,绑定
swipeleft和swiperight事件。 - 事件处理:左滑触发下一条/右滑触发上一条逻辑,实现流畅的切换效果。
- 资源释放:在组件卸载时调用
destroy()方法,避免内存泄漏和手势残留。
适用边界与注意点
- 方向冲突:当页面存在纵向滚动时,需通过
touch-action或方向限制避免手势冲突。 - 功能边界:不实现完整的多指缩放编辑器,如需此类功能可使用
panzoom等库。 - 注释要求:关键实现点需标注小四原创,便于后续维护和协作。
使用场景
- 移动端客户管理应用中需实现卡片左右滑动切换功能,要求手势响应流畅且无滚动冲突
- Demo附件预览组件需支持左右滑动翻页,要求手势识别精确且卸载后无残留
- 移动端列表页面需通过滑动手势触发下一项展示,要求手势方向限制与页面滚动兼容
- 客户卡片详情页需实现左右滑动切换不同客户信息,要求资源释放彻底无内存泄漏
适合人员
- 移动应用前端工程师,需在客户管理模块中实现卡片滑动切换交互
- 前端开发工程师,需在附件预览组件中集成手势翻页功能
- 移动端UI组件库开发者,需处理手势与滚动冲突问题
- React Native开发者,需在卡片列表组件中实现滑动切换逻辑