Angularjs 什么是';controllerAs';指令';角2分量的s性质?

Angularjs 什么是';controllerAs';指令';角2分量的s性质?,angularjs,angular,angular2-directives,Angularjs,Angular,Angular2 Directives,我开始将Angular 1指令之一迁移到Angular 2组件 我当前使用的指令具有controllerAs:'ctrl'属性,指令的模板在访问属性时使用'ctrl.前缀 查看,我没有看到任何可以替代此属性的属性 在Angular 2中没有与controllerAs等价的东西。例如,给定此控制器类和模板: @Component({ selector: 'component-a', template: `<div class="component-a">

我开始将Angular 1指令之一迁移到Angular 2组件

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


查看,我没有看到任何可以替代此属性的属性

在Angular 2中没有与
controllerAs
等价的东西。例如,给定此控制器类和模板:

@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;
    }

}
@组件({
选择器:'component-a',
模板:`
组件A:{{counter}}
`
})
导出类组件A{
计数器=0;
增量(){
这个计数器+=1;
}
}
在方法
increment()
中,
绑定到该特定组件本身的控制器实例。在模板中,可以通过
{{counter}}
访问计数器

正如我们所见,没有命名控制器的机制,因为我们已经可以使用默认功能访问它


您可以认为
controllerAs
机制已集成到Angular 2的默认组件功能中,或者该功能已被删除,不再需要,具体取决于您如何看待它。

组件的每个
都将在
中包含其上下文,因此,您不需要在这里的
Angular2
中创建控制器别名,您可以直接访问HTML上的
this
上下文。。