Angular2更改默认的更改检测策略

moo*_*ede 13 angular angular-changedetection

使用Angular2(rc1),是否有人知道如何将默认的更改检测策略设置为OnPush?它可以以某种方式全局设置吗?

我想避免将此行添加到每个组件

@Component({
    ...
    changeDetection: ChangeDetectionStrategy.OnPush,
    ...
})
Run Code Online (Sandbox Code Playgroud)

Gün*_*uer 11

变更检测策略只能按组件或指令定义,而不能全局定义.

不鼓励使用自定义装饰器,因为即将推出的离线模板编译器不支持它.


ush*_*189 11

可以在 CLI 中将更改检测策略设置为 OnPush,以便新生成的组件将其设置为这样。

ng generate component test --changeDetection=OnPush
Run Code Online (Sandbox Code Playgroud)

您还可以在 angular.json 中将该值设置为默认值,这样您就无需每次都设置该标志:

// angular.json
{
  //...
  "schematics": {
    "@schematics/angular": {
      "component": {
        "changeDetection": "OnPush"
      }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)