开发大型(企业)角度Web应用程序的指南应该如何?
如果您的目录结构如此(并且您的应用很大)我应该这样模块化吗? :
应用
- controllers.js
- filters.js
- directives.js
- app.js
- services.js
- 的index.html
我应该在根 myApp 模块或子模块中注入(包含)每个已安装的模块吗?
angular.module('myApp',[
'tasks',
'documents',
'widgets',
'customModuleForWidgets'
]);
或
angular.module('widgets',[
'customModuleForWidgets'
]);
路由配置应该在一个地方(partent模块)还是在它自己的模块中?
angular.module('myApp',[
'ui.router'
])
.config(['$routeProvider', '$stateProvider', function ($routeProvider, $stateProvider) {
$stateProvider
.state("widget-areaState", {
url: "/widget-area",
templateUrl: 'views/dashboard-widget.html',
controller: 'widgetCtrl'
});
.state(...) // other state
.state(...) // other state
})
;
答案 0 :(得分:1)
您可以查看John Papa的guide。它包含许多不同的东西和项目结构。这是一个很好的指南,开始一个有很多方法的大角度项目。如果你想跟随它,你可以自己决定每个确切的项目,但大多数似乎非常合理。在结构的情况下,他建议逐个文件夹:
app/
app.module.js
app.config.js
components/
calendar.directive.js
calendar.directive.html
user-profile.directive.js
user-profile.directive.html
layout/
shell.html
shell.controller.js
topnav.html
topnav.controller.js
people/
attendees.html
attendees.controller.js
people.routes.js
speakers.html
speakers.controller.js
speaker-detail.html
speaker-detail.controller.js
services/
data.service.js
localstorage.service.js
logger.service.js
spinner.service.js
sessions/
sessions.html
sessions.controller.js
sessions.routes.js
session-detail.html
session-detail.controller.js
答案 1 :(得分:0)