用EventManagerPlugin管理你的事件

152 阅读1分钟

本文纯属测试ng的一些特性

export const BetterScrollEventManagerPluginProvider: Provider = {
    provide: EVENT_MANAGER_PLUGINS,
    useClass: BetterScrollEventManager,
    multi: true
};
export const BetterScrollEvents = [
    'beforeScrollStart',
    'scrollStart',
    'scroll',
    'scrollCancel',
    'beforeScrollStart',
    'scrollEnd',
    'touchEnd',
    'flick',
    'refresh',
    'destroy',
    'pullingDown',
    'pullingUp',
];
export class BetterScrollEventManager extends DomEventsPlugin {
    supports(eventName: string): boolean {
        return BetterScrollEvents.indexOf(eventName) > -1;
    }
    addEventListener(element: HTMLElement, eventName: string, handler: Function): Function;
}

<!--module中注册-->
providers: [
    BetterScrollEventManagerPluginProvider
]

而后我们就可以畅快的使用BetterScrollEvents中的事件随意绑定到dom中了!