我可以使用stateParams在父控制器中设置值 - 但是想要调用该控制器中的函数。我是否需要在孩子身上放一些东西并解决:'或者' onEnter:'用于调用父控制器中的函数的属性。注意:孩子们没有任何模板,因为他们会使用父母模板。
myApp.config(function($stateProvider) {
$stateProvider
.state('reports', {
url: "/reports",
templateUrl: "reports.parent.template.html",
controller: "ReportsController",
controllerAs: "reports"
})
.state('reports.users', {
url: "/users",
reportSettings: {
title: "Active Users Report",
reportName: "UserList.trdx"
}
})
.state('reports.departments', {
url: "/departments",
reportSettings: {
title: "Active Departments Report",
reportName: "DepartmentList.trdx"
}
})
});
答案 0 :(得分:1)
更新:请参阅此plunkr了解解决方案:http://plnkr.co/edit/xnMDiv
由于您将ReportsController注入“报告”,您可以简单地将该控制器中的函数定义为“this.function”,然后在子视图中使用“reports.function”来访问它。
如果您想在子控制器中调用该函数(而不是视图HTML),那么您需要在父级创建该函数作为解析并将其注入子控制器。
所以:
resolve: { myfunction... }
并在您的子控制器中
('myfunction')
希望这是有道理的。我很移动,写作很棘手。