原因:ionic2采用hammerjs的手势事件,但是hammerjs的swipe默认是不允许垂直方向的滑动,因此,需要手动配置,并重载配置
1.编写配置文件:
下载hammerjs和类型描述文件:npm install hammerjs --save && npm install @types/hammerjs --save-dev;
新建myHammer.config.ts文件,并写入一下内容:
import {
HammerGestureConfig,
HAMMER_GESTURE_CONFIG }
from
'@angular/platform-browser';
import
*
as
Hammer
from
'hammerjs';
///原因是hanmmerjs默认是手势事件都是水平方向的
export
class
MyHammerConfig
extends
HammerGestureConfig {
overrides = <
any>{
'swipe'
: {
direction:
Hammer.
DIRECTION_ALL }
// 重载设置
}
}
2.模块的跟模块重载配置:
我建议是在app.module.ts模块导入:
providers: [{ provide: HAMMER_GESTURE_CONFIG, useClass: MyHammerConfig }]
以上