AngularJS:将$ routeProvider与多个模块一起使用?

时间:2016-04-18 02:22:49

标签: angularjs mean-stack

我正在构建一个包含多个模块的角度应用。每个模块都是一个视图组件(而不是一个包含所有视图组件的巨型模块),这是John Papa的Angular风格指南所推荐的。然而,以前我可以做... ...

angular.module('app').config( <config for all client routes and their controllers> )

我已经意识到我无法做到这一点,因为控制器现在位于不同的模块上。所以,我已经将$ routeProvider登录分成了各自的文件:

angular.module('app.<modulename>').config( <config for app.modulename routes and its controllers> );

但是,当我导航到我的app模块上未定义的任何路径时,我看到一个空页面,所以看起来其他模块的$routeProvider似乎无法正常工作。如何让多个模块共享ng-view

1 个答案:

答案 0 :(得分:3)

为了配置模块,您需要通过依赖关系数组将它们包含在主应用程序模块中。例如,假设您有以下模块......

angular.module('app.module1', ['ngRoute'])
    .config(function($routeProvider) { ... })

angular.module('app.module2', ['ngRoute'])
    .config(function($routeProvider) { ... })

您可以通过

配置和包含它们
angular.module('app', ['app.module1', 'app.module2'])