我有一个关于AngularJS和TypeSscript范围的问题。
我已经中途进入这个项目并熟悉TypeScript。以前我直接在JavaScript中编写了所有AngularJS代码。
此应用程序的控制器和视图中发生异常。它不是将成员绑定在传递给构造函数的$ scope对象的作用域中,而是将它们直接放在Controller类本身上,如下所示:
module Wizard.Controllers {
"use strict";
export class LoginController extends BaseAppealController {
static $inject = ["$q", "$scope"];
private isInForgottenPasswordMode: boolean;
private passwordSent: boolean;
// other properties
private scope;
constructor($q: angular.IQService, $scope) {
super($q);
// other construtor-related activity
this.isInForgottenPasswordMode = false;
this.passwordSent = false;
}
// ..behaviours and views can interact with isInForgottenPasswordMode
// and passwordSent as if they were on a $scope..
}
}
使用AngularJS Batarang在视图上查看范围时,我可以看到LoginController的范围包含这两个属性 - inForgottenPasswordMode和passwordSent。
有人可以解释一下这是怎么回事吗?是否没有必要绑定范围?这是我对AngularJS错过的东西吗?
答案 0 :(得分:1)
在角度1.4中,您可以使用$scope
访问this
值。
它用于启用Controller as
语法。
你可以看看这个:
http://toddmotto.com/digging-into-angulars-controller-as-syntax/