有两种用于访问控制器功能的模式: this
和$scope
.
我应该使用哪个以及何时使用?我了解this
设置为控制器,并且$scope
是视图范围链中的一个对象。但是使用新的“Controller as Var”语法,您可以轻松地使用其中任何一种。所以我要问的是什么是最好的,未来的方向是什么?
例子:
使用
this
function UserCtrl() { this.bye = function() { alert('....'); }; }
<body ng-controller='UserCtrl as uCtrl'> <button ng-click='uCtrl.bye()'>bye</button>
使用
$scope
function UserCtrl($scope) { $scope.bye = function () { alert('....'); }; }
<body ng-controller='UserCtrl'> <button ng-click='bye()'>bye</button>
与其他 Javascript OO 模式相比,我个人发现this.name
它更容易看,更自然。
请指教?