我有一个Angular项目,里面有几个库/项目。其中一个库是自定义的carousel (使用hammerjs),我可以在任何其他库中重用它。问题是希望在carousel模块中设置hammerjs的配置,而不必在shell中设置它。这样它就可以处理自己的所有配置。只有当我在外壳app.module.ts中而不是在carousel.module.ts中设置它时,它才能起作用。
例如,我想设置
export class MyHammerConfig extends HammerGestureConfig {
buildHammer(element: HTMLElement) {
let mc = new Hammer(element, {
touchAction: 'pan-y',
recognizers: [
[Hammer.Pan, { direction: Hammer.DIRECTION_HORIZONTAL }],
],
});
return mc;
}
} 和
providers: [{ provide: HAMMER_GESTURE_CONFIG, useClass: MyHammerConfig }]有人知道如何让任何消费库使用它正在消耗的库中的配置吗?
谢谢
发布于 2018-09-07 21:34:26
目前Angular的一个限制是必须在引导时创建事件插件。在短期内,您可以仅为应用模块中的锤子手势配置添加一个提供者。
https://stackoverflow.com/questions/52223179
复制相似问题