我已开始使用ControllerAs
和vm
变量语法。但现在我不知道如何访问父控制器的方法(在我通过$scope
变量访问之前)。
这是HTML的一个例子:
<div ng-controller="AppCtrl as app">
<div ng-controller="ChildCtrl as child">
</div>
</div>
相应的控制器:
angular.module('test').controller('AppCtrl', function () {
var vm = this;
vm.log = function() {
console.log("Output");
}
}
angular.module('test').controller('ChildCtrl', function () {
var vm = this;
// Here I want to access parent's log() function
}
如何从ChildCtrl
访问 log()功能?
答案 0 :(得分:2)
通过将$scope
注入子控制器并使用以下属性,可以在使用controllerAs语法时访问父作用域:
$scope.app
其中app
是您用于父控制器的名称。