我在 Angular2 中使用 HammerJS 时遇到问题。
我有一个轮播(基于带有 Angular2 事件处理程序的引导轮播),我正在其中收听向左滑动 and 向右滑动事件。
滑动本身效果很好。
问题是,由于我使用 HammerJS,我无法在轮播组件上向上/向下滚动,而且由于它是一个完整视口大小的项目,所以这是一个大问题。
如何解决这个问题?
平台:
角度2 2.1.2
搭载 Android 系统的三星 Galaxy S2
5.1.1
安卓版谷歌浏览器:54.0.2840.85
Got it!
在您的应用程序模块中:
import { HAMMER_GESTURE_CONFIG, HammerGestureConfig } from '@angular/platform-browser';
export class MyHammerConfig extends HammerGestureConfig {
overrides = <any> {
'pinch': { enable: false },
'rotate': { enable: false }
}
}
@NgModule({
declarations: [
// ...
],
imports: [
// ...
],
providers: [
// ...
{
provide: HAMMER_GESTURE_CONFIG,
useClass: MyHammerConfig
}
],
bootstrap: [ AppComponent ]
})
export class AppModule {}
现在垂直滚动可以工作,禁用后pinch
and rotate
。
目前还没有找到其他办法。我不确定会发生什么pinch
and rotate
事件(我的意思是它们将被禁用,我认为)。但即使没有这个配置,附加一个(pinch)="onPinch($event)"
- 反正什么也没做。
我的项目中的角度版本:2.4.1
测试于:
- Chrome for Windows(在 Surface 上,真正的触摸屏 - 不仅仅是模拟)v 55.0.2883.87 m(64 位)
- Android 版 Chrome - v 55.0.2883.91
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)