AngularJS app.module vs app.route

时间:2016-01-21 01:01:06

标签: angularjs

我读了这篇关于AngularJS项目结构最佳实践的文章: https://scotch.io/tutorials/angularjs-best-practices-directory-structure

在“App Folder”标题下,他简要解释了app.module.js和app.route.js文件之间的区别,但我不明白。

任何人都可以给我一个例子,其中包含两个文件的短伪代码吗?

任何帮助都将深表感谢!

1 个答案:

答案 0 :(得分:2)

在此结构下,app.module.js将用于为您的应用程序创建主模块(例如App),配置您在整个应用程序中使用的服务,或者用于运行任意代码模块已加载其所有依赖项并配置了它可能希望配置的任何服务。

app.route.js用于专门配置一项服务:您用于处理应用程序状态的路由器。它可以创建自己的模块或重用app.module.js中的模块,但如果要使用自定义模块,则必须直接依赖于您选择的路由器。此外,您必须将其添加为主app.module.js的依赖项,例如。

angular.module('App', ['App.Routes']);

angular.module('App.Routes', ['RouterModule']);

仅使用一个名为App的模块的示例,该模块还依赖于其他任意模块SomeModule和路由模块RouterModule

<强> app.module.js

angular.module('App', ['SomeModule', 'RouterModule'])
  .config(function (SomeServiceProvider, SomeOtherServiceProvider) {
    // Configure SomeServiceProvider/SomeOtherServiceProvider.
  })
  .run(function () {
    console.log('Done loading dependencies and configuring module!');
  });

<强> app.route.js

angular.module('App')
  .config(function (YourRouterProvider) {
    // Configure YourRouterProvider to define the states for the application.
  });

Angular Modules:

https://docs.angularjs.org/api/ng/function/angular.module

使用ngRouter以角色进行路由:

https://docs.angularjs.org/api/ngRoute