我在我的應用程序中使用controllerAs語法,我想從子控制器訪問父控制器的函數,我知道這是可以通過注入$ scope來實現的,但是考慮到Angular已經試圖很難從代碼中擺脫$ scope, '想知道是否有一個更優雅的方式做到這一點,而不注入$ 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
}
我知道我可以注入$範圍,然後通過$scope.app.log()
訪問日誌功能,但有一個bettter方式無需注入即可訪問日誌$scope?
[從子控制器angularjs訪問父作用域(的可能的複製http://stackoverflow.com/questions/21453697/angularjs-access-parent-scope -from-child-controller) – Ted