我已经创建了一个控制器,它占用大约10000条线。然后,我想将原始控制器分为4个控制器,每个控制器包含在每个文件中。原始控制器有一个父控制器或抽象控制器,在三个子控制器中,我在子控制器中使用父控制器,如 $scope.$parent.value
.
我这里的问题是
我如何让它像以前一样工作?
使用 require
在子控制器中,并使用父控制器
我没有尝试过,但我可以像这样推送到父控制器 angular.module("app.parent").requires.push("app.child1");
将大型控制器模块化为小型控制器的正确技术或原则是什么?
"use strict";
angular.module("app.parent",
[
"ui.router",
"ngMap",
"ngAnimate",
"ui.bootstrap",
])
.config([
"$stateProvider",
function ($stateProvider) {
//parent abstract state
$stateProvider.state("management", {
url: "/parent",
template: "<div ui-view></div>",
abstract: true
});
//parent state
$stateProvider.state("parent.management", {
templateUrl: "/parent/parent",
controller: "parentController",
});
//these three are the children controller
$stateProvider.state("parent.management.child1", {
url: "/child1",
templateUrl: "/parent/child1",
controller: "child1Controller",
});
$stateProvider.state("parent.management.child2", {
url: "/child2",
templateUrl: "/parent/child2",
controller: "child2Controller"
});
$stateProvider.state("parent.management.child3", {
url: "/child3",
templateUrl: "/parent/child3",
controller: "child3Controller"
});
}
])
.controller("parentController", [$scope, function ($scope) {
}])
.controller("child1Controller", [$scope, function ($scope) {
}])
.controller("child2Controller", [$scope, function ($scope) {
}])
.controller("child3Controller", [$scope, function ($scope) {
}])
.factory("parentService",
[
"$http",
function ($http) {
var headers = {
'Content-Type': 'application/json'
};
return {
test: function (model) {
return $http({
method: 'GET',
url: 'api/test',
data: model,
headers: {
'Content-Type': 'application/json'
}
});
},
};
}
]);
angular.module("app").requires.push("app.parent");
暂无答案!
目前还没有任何答案,快来回答吧!