有两种模式用于访问控制器函数:this
和$scope
。
我应该什么时候用哪种?我知道this
被设置为控制器,而$scope
是视图作用域链中的对象。但是有了新的“Controller as Var”语法,你可以很容易地使用其中任何一种。所以我的问题是什么是最好的,未来的方向是什么?
例子:
this
< p >
function UserCtrl() {
this.bye = function() { alert('....'); };
}
<body ng-controller='UserCtrl as uCtrl'>
<button ng-click='uCtrl.bye()'>bye</button>
Using $scope
function UserCtrl($scope) {
$scope.bye = function () { alert('....'); };
}
<body ng-controller='UserCtrl'>
<button ng-click='bye()'>bye</button>
I personally find the this.name
to be easier on the eye and more natural compared to other Javascript OO patterns.
Advice please?