Как я могу использовать несколько контроллеров angularjs внутри представления (или подпредставления нескольких представлений)?
В качестве заголовка я хотел бы использовать более одного контроллера внутри некоторого подвью
route.js (например,):
.state("multi",{
url: "/multi",
views: {
"": {
templateUrl: "multipleView.htm",
controller: "MainCTRL",
controllerAs: "ctrl"
},
"viewA@multi": {
templateUrl: "testingBlock.htm",
controller: ["CtrlOne", "CtrlTwo"],
controllerAs: "ctrl"
},
});
Или я должен поместить CtrlOne и CtrlTwo в третий контроллер:
function CtrlThree($scope){
CtrlOne($scope);
CtrlOTwo($scope);
}
1 ответ
Решение
Почему бы не поместить контроллер в представление вместо указания его на routeProvider.
Также есть ли у контроллеров иерархия или вы хотите, чтобы они все просто работали на одном уровне.
Пример того, что я упомянул выше.
<div ng-controller="CtrlOne">
<div ng-controller="CtrlTwo"></div>
</div>
Это будет HTML внутри файла "множественного вида.htm".