部分而不是 app.js 中的角度路由定义
Angular routing definitions in partials instead of app.js
我最近使用Angular Seed Project(https://github.com/angular/angular-seed/)开始了一个新项目,我注意到了一些奇怪的事情。我对 Angular 很陌生,但在我所做的所有教程中,路由部分始终位于"主"JS 文件(通常名为 app.js)中。然而,在这里,在这个"种子项目"中,app.js中唯一的路由定义是:
config(['$routeProvider', function($routeProvider) { $routeProvider.otherwise({redirectTo: '/view1'});}]);
其他路由定义位于每个部分 Js 文件(在控制器内)中,按示例文件 view1/view1 .js
:angular.module('myApp.view1', ['ngRoute'])
.config(['$routeProvider', function($routeProvider) {
$routeProvider.when('/view1', {
templateUrl: 'view1/view1.html',
controller: 'View1Ctrl'
});
}])
和视图 2/视图 2.js :
angular.module('myApp.view2', ['ngRoute'])
.config(['$routeProvider', function($routeProvider) {
$routeProvider.when('/view2', {
templateUrl: 'view2/view2.html',
controller: 'View2Ctrl'
});
}])
所以我明白,由于所有 Js 文件都正确包含,结果与所有路由都是在应用程序中完成的相同.js但我想知道为什么它是这样的结构。角度种子旨在成为Angular的"最佳实践"入门。所以我的问题来了,在每个部分 JS 文件中拆分路由定义而不是在应用程序中定义所有内容是否被认为是一种好的做法.js ?为什么?
谢谢你们 ! :)
您可以使用这两种方法,两者都是正确的,而且我认为使用其中一种或另一种比代码的组织更有优势,它甚至不会影响应用程序的性能。对于小型演示应用程序(教程)更容易将所有路由放在一起,但对于现实生活中的大型或可扩展应用程序,角度种子中使用的方法似乎更加集中,您将控制器,路由器和视图保存在一个文件夹中(模块)
相关文章:
- 尝试使用Node.js动态路由从IMDB中抓取电影内容.但是在我的output.json文件中没有定义
- 当我将 GET /any 发送到自定义路由“GET /:id”时,我得到 req.params.id = 'favico
- 从自定义指令调用角度路由
- angular-index.html只识别默认路由中定义的函数
- 使用可选参数和默认模型定义路由
- 自定义 Mod 文件夹的角度路由问题
- Angular JS TypeError:无法读取路由上未定义的属性“id”
- 使用路由的未定义服务控制器
- 在路由配置中定义 AngularJS 中的 ng-view 动画
- 部分而不是 app.js 中的角度路由定义
- rootScope 在更改路由时变得未定义
- Ember Data 1.0 加载路由时出错:类型错误:无法设置未定义的属性“类型键”
- 无法读取路由参数中未定义的属性“名称”
- Angular JS:我们可以在没有定义路由的控制器上设置解析或承诺吗?
- 自定义骨干路由参数
- 定义节点 js 的模式路由
- 如何在反应路由器中将子路由定义为反应组件
- 骨干路由器路由定义,以处理所有这些条件
- 404上的rails js调用,可能不正确的路由定义
- 在为rest路由定义视图时,数据是否会被传递给request .locals ?