本文整理汇总了TypeScript中@angular/platform-browser/src/dom/events/event_manager.EventManager.getZone方法的典型用法代码示例。如果您正苦于以下问题:TypeScript EventManager.getZone方法的具体用法?TypeScript EventManager.getZone怎么用?TypeScript EventManager.getZone使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类@angular/platform-browser/src/dom/events/event_manager.EventManager
的用法示例。
在下文中一共展示了EventManager.getZone方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: addGlobalEventListener
addGlobalEventListener(target: string, eventName: string, handler: Function): Function {
var zone = this.manager.getZone();
var eventsArray = this.getMultiEventArray(eventName);
var outsideHandler = (event: any) => zone.run(() => handler(event));
return this.manager.getZone().runOutsideAngular(() => {
eventsArray.forEach((singleEventName: string) => {
this.manager.addGlobalEventListener(target, singleEventName, outsideHandler);
})
});
}
示例2: addEventListener
addEventListener(element: HTMLElement, eventName: string, handler: Function): Function {
var zone = this.manager.getZone();
var eventsArray = this.getMultiEventArray(eventName);
// Entering back into angular to trigger changeDetection
var outsideHandler = (event: any) => {
zone.run(() => handler(event));
};
// Executed outside of angular so that change detection is not constantly triggered.
var addAndRemoveHostListenersForOutsideEvents = () => {
eventsArray.forEach((singleEventName: string) => {
this.manager.addEventListener(element, singleEventName, outsideHandler);
});
}
return this.manager.getZone().runOutsideAngular(addAndRemoveHostListenersForOutsideEvents);
}