我想为我的所有页面和组件启用ChangeDetection.OnPush。因此,我编写了一个充当装饰器的函数:
import {Component, ChangeDetectionStrategy} from '@angular/core';
export function PushComponent(options: any = {}) {
options.changeDetection = ChangeDetectionStrategy.OnPush;
return function(target) {
return Component(options)(target);
}
}
像p这样使用它在离子2 RC之前工作正常:
@PushComponent({
templateUrl: 'URL'
})
export class FooBar {
// ...
}
然而,由于在离子2 RC中引入相对模板URL,这不再起作用("无法加载login.html(...)"),我不知道如何修复这个。如果我用@Component替换@PushComponent,一切正常,所以模板url中没有错误。您是否知道如何解决此问题,或者如何再次启用绝对模板网址?