【发布时间】:2014-04-26 12:34:23
【问题描述】:
我有一个大型 AngularJs 应用程序,并且正在为路由注入/组织而苦苦挣扎。
大多数应用程序(据我所知)在一个大文件中定义所有路由,例如 https://github.com/IgorMinar/foodme/blob/master/app/js/app.js#L7
我的路线比较复杂,例如:
app.config(["$routeProvider", function ($routeProvider) {
$routeProvider.when('/navigation/:id', {
templateUrl: 'app/admin/nav/navigation.tpl.html',
controller: 'NavigationCtrl',
title: 'Navigation Config',
resolve: {
nav: function($route, NavModel) {
return NavModel.findOne($route.current.params.id);
},
reports: function($route, ReportsModel) {
return ReportsModel.findAll($route.current.params.id);
}
}
});
}]);
由于它们很复杂并且与控制器非常耦合,因此我的路由定义页面将非常庞大且非常混乱。
有没有更好的方法来声明路由?您可以只声明一个短版本,然后在注入该控制器时对其进行扩展吗?
【问题讨论】:
-
您可以为路线创建多个文件
-
我相信您可以进行多个配置调用,在其中注入 $routeProvider 并继续向其添加路由,但我认为您无法在执行配置后修改 $routeProvider thinkster.io/angularjs/Z9xvxn6klY/angularjs-the-config-function跨度>
标签: angularjs