在模块内,控制器可以从外部控制器继承属性:
var app = angular.module('angularjs-starter', []);
var ParentCtrl = function ($scope, $location) {
};
app.controller('ChildCtrl', function($scope, $injector) {
$injector.invoke(ParentCtrl, this, {$scope: $scope});
});
通过以下示例进行操作:无效链接:http : //blog.omkarpatil.com/2013/02/controller-inheritance-in-angularjs.html
模块内部的控制器也可以从同级继承吗?
var app = angular.module('angularjs-starter', []);
app.controller('ParentCtrl ', function($scope) {
//I'm the sibling, but want to act as parent
});
app.controller('ChildCtrl', function($scope, $injector) {
$injector.invoke(ParentCtrl, this, {$scope: $scope}); //This does not work
});
第二个代码无效,因为它$injector.invoke
需要一个函数作为第一个参数,并且找不到对的引用ParentCtrl
。