微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用angular2配置Hammerjs事件

如何在angular2中配置hammerjs事件?

要使用angular2的hammerjs事件,我只需要在我的html中包含事件,如下所示:

<div (press)="onLongPress($event)"></div>

在这种情况下(按)认时间为251毫秒.
Hammerjs press event documentation

如何配置此时间以获得不同的值?

解决方法

使用Angular 2.0.1,实际上有一种配置hammerjs的直接方法

// app.module.ts

import { HammerGestureConfig,HAMMER_GESTURE_CONfig } from '@angular/platform-browser';

export class MyHammerConfig extends HammerGestureConfig  {
  overrides = <any>{
      // override hammerjs default configuration
      'pan': {threshold: 5},'swipe': {
           veLocity: 0.4,threshold: 20,direction: 31 // /!\ ugly hack to allow swipe in all direction
      }
  }
}

@NgModule({
  imports:      [ ...],declarations: [ ... ],bootstrap:    [ ... ],providers:    [ { 
                    provide: HAMMER_GESTURE_CONfig,useClass: MyHammerConfig 
                } ]
})

请注意,我正在使用hack来允许使用Hammer.DIRECTION_ALL的当前值向所有方向滑动.虽然该值可能暂时不会改变,但只要有人通过app模块直接访问Hammer.DIRECTION_ALL值,我就会立即更新此帖子.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐