ControllerAs with vm.语法:如何
ControllerAs with vm. syntax: how to?
我已经在几个地方读到,包括一些SO问题,ControllerAs
语法正在成为推荐的模式,因为在其他方面,它类似于Angular 2中的工作方式。
因此,我想深入研究一下vm.
的语法是如何工作的。
不管你对这种方法有什么看法,我希望你能告诉我为什么这种方法不起作用,
//controllerAs with vm. syntax
var app = angular.module('myApp', []);
app.controller('MyCtrl', function () {
var vm = this;
vm.like = likeIt;
vm.dislike = dislikeIt;
vm.flag = flagIt;
function likeIt() {
alert('liked');
},
function dislikeIt() {
alert('disliked');
},
function flagIt() {
alert('flagged');
}
});
Plunkr 1
而使用$scope
的方法范围
var app = angular.module('myApp', []);
app.controller('MyCtrl', function ($scope) {
$scope.like = function () {
alert('liked');
};
$scope.dislike = function () {
alert('disliked');
};
$scope.flag = function () {
alert('flagged');
}
});
Plunkr 2