(function(){
var eateryControllers=angular.module('eateryControllers',[]);
eateryControllers.controller('MainController',function($scope){
var mainCtrl=this;
mainCtrl.$on('$viewContentLoaded',function(){
console.log("view loaded");
})
});
})();
这导致错误:mainCtrl.$on 不是函数。早期版本通过注入(inject) $scope 来做到这一点。我们不能像上面那样使用“this”关键字和“Controller as”方法来做到这一点
最佳答案
在您的情况下,“this”指的是 Controller 而不是 $scope。要使“this”引用 $scope,您需要位于 $scope 方法内。您需要使用:
$scope.$on(...)
关于javascript - 带有 this 关键字的 Angular $on 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33180870/