我可以在angularJS的$routeProvider.when()中传递多个控制器吗?



我试着在各种线程中搜索这个,但我不能最终理解这个

test.config(['$routeProvider', function($routeProvider){
$routeProvider
    .when('/',
        {
            controller:'SimpleController1',
            templateUrl: 'partials/1.html'
        })
    .when('/xyz',
        {
            controller:'SimpleController1, SimpleController2',
            templateUrl:'partials/2.html'
        })
    .otherwise({ redirectTo: '/'});
}]);

我试着做上面的代码片段,但它不起作用。我能做这样的事吗?如果是,那我做错了什么?

只允许一个控制器,并且将作为ng-view中的控制器分配给加载模板。无需在主控制器模板中定义ng-controller

如果您需要定义多个控制器,我建议您定义一个主/父控制器并在routeProvider中使用它,然后使用ng-controller指令在模板中已经有其他控制器。

还是……

使用Angular UI的UI- router : http://angular-ui.github.io/,这是一个更通用的路由器。

最新更新