【发布时间】:2016-11-13 21:47:32
【问题描述】:
不能使用 ControllerAs this
谁能给我解释一下下面的场景吗?
作品
ng-controller="Parent as thus"
休息
ng-controller="Parent as this"
使它成为关键字的单个字母——我想要的——破坏了森林。
这是为什么?
附:我知道vm 约定,但我发现它扰乱了控制器/视图模型的可移植性。
【问题讨论】:
-
但我发现它会干扰控制器/视图模型的可移植性?你能解释一下“这个”吗?没有双关语
-
我猜 Angular 会尝试评估传入的字符串,而
this是保留字。 -
就架构而言,耦合到您的 base-lib/framework 是一种不好的做法。因此,您可能希望将通用 Viewmodel 从系统移植到系统。我发现
vm方法在端口发生时会产生一定程度的变更成本。例如,如果我采用了用于所有项目的通用CalendarViewmodel,我将不得不遍历this的所有引用并将其转换为vm;只为那个控制器。这是一个过于简单的例子,它只是众多例子之一。这里还有很多要说的。
标签: javascript angularjs this angularjs-controlleras