同一视图上的多个控制器

时间:2016-10-31 23:25:01

标签: javascript angularjs angular-routing

如何在同一视图中调用两个或更多控制器,如下所示:

.when('/func', {
  controller: 'ListController' ,
  controller: 'AddController',
  templateUrl: 'views/funcionario/func.html'
})

或者这个:

.when('/card', {
    controller: ['ListController','AddController'],  
    templateUrl: 'views/cardapio.html'
})

2 个答案:

答案 0 :(得分:0)

您不能在路线中设置两个控制器,但您可以在路线中设置一个控制器,然后使用ng-controller将另一个设置为模板的一部分。

例如:

.when('/card', { 
    controller: 'ListController',
    templateUrl:'views/cardapio.html'
}

然后在你的模板中:

<div ng-controller="AddController">
//part of html that you can to use AddController for
</div>

尽管通常不建议这样做。

答案 1 :(得分:0)

你可以这样做:

<div ng-view></div> <div ng-controller="SecondController"></div>

在ng-view中,您将加载$ routeProvider中定义的视图/控制器,并让SecondController处理第二个div。