Angular 2组件中'controllerAs'指令属性的类比是什么?

Dmi*_*kov 5 angularjs angular2-directives angular

我开始将我的一个Angular 1指令迁移到Angular 2组件.

我当前controllerAs: 'ctrl'使用的指令具有属性,指令的模板'ctrl.'在访问属性时使用前缀.

查看官方的ComponentMetadata文档,我没有看到任何可用于代替此属性的属性.

Ang*_*ity 9

controllerAs在Angular 2中没有等价物.例如,给定此控制器类和模板:

@Component({
    selector: 'component-a',
    template: `<div class="component-a">
                <div class="counter" (click)="increment()">Component A: {{counter}}</div>
              </div>`
})
export class ComponentA {

    counter = 0;

    increment() {
        this.counter += 1;
    }

}
Run Code Online (Sandbox Code Playgroud)

在该方法中increment(),this限制于该特定组件本身的控制器实例.在模板中,可以通过访问计数器{{counter}}.

我们可以看到没有机制来命名控制器,因为我们已经可以使用默认功能访问它.

您可以认为该controllerAs机制已集成在Angular 2的默认组件功能中,或者该功能已被删除,因为它不再需要,具体取决于您的查看方式.