一、初步加载初始页面如index.html,首先加载样式文件,再加载requireJS配置文件和源文件。javascript
二、经过requireJS配置的data-main主函数入口,加载angularJS和应用依赖的js源文件。css
三、经过ng.bootstrap(document, ['app'])手动初始化静态页面使其支持angularJS,ng.resumeBootstrap()延迟引导。html
四、经index.html页面配置布局指令,加载smart-device-detect、 smart-fast-click、smart-layout、smart-page-title处理页面以及总体规划布局。前端
五、经过index.html指定的属性ui-view,经过angularJS的ui-router 插件来动态的切换路由。html5
六、经过主函数入口main.js注册的应用app.js来注册整个应用程序的各个模块,每一个模块中定义各自的路由。java
七、定义一个全局依赖的模块如includes.js文件,装载全局应用程序用到的服务、指令以及组件。node
八、定义相应的拦截机处理http请求的异常统一操做,如是否登录,是否拥有该操做权限等。jquery
九、由各自定义的路由去加载相应的模版,相应的controller处理数据提供到模版上显示。web
该架构采用javascript脚本技术实现,系统架构图以下:npm
前端彻底无需任何依赖工具,一个记事本编辑器便可。需配合后端java开发的 话只需按照java的开发环境创建一个web项目便可,将前端框架搭建好的webapp目录拷贝到web项目的webRoot下面就能够开始开发了。开发完成后采用grunt构建工具打包压缩webapp的js文件。
一、angularJS、总体框架支持者,MVVM模式架构。
二、requireJS、模块化以及按需加载js文件。
三、require-domready、采用回调的方式让页面加载完成后运行requireJS。
四、bootstarp、采用bootstrap样式库。
五、jquery、jquery文件库,操做DOM元素。
六、angular-route、路由控制,经过hash和history两种方式实现。
七、angular-couch-potato、配合ui-router来实现延时按模块加载。
八、angular-animate、实现动画效果的angular插件。
九、angular-sanitize、实现html净化的angular插件。
十、以上为框架的主要源文件,还有大量的插件和组件以及自定义组件等。
一、新建一个webapp的文件夹,在其下面建好对应的文件夹,如api、app、plugin、styles、vendor和入口地址index.html。
二、准备好angular和require以及所需的插件源文件,存放到vendor目录 下面,最好按功能区分来设置不一样的文件夹。经过config.js配置应用依赖的js文件。
三、定义app所需的功能,创建相应的文件夹,如auth、components、dashboard、layout、modules。定义应用的主函数和应用文件,如main.js、app.js以及抽离的配置文件config.js、includes.js文件。
四、开始编写index.html,采用标准的html5规范,导入应用需用的样式文件、定义script脚本加载requireJS文件。
五、定义总体应用的布局,经过angularJS的指令和路由操做。
六、定义requireJS的配置文件,配置整个应用的依赖关系。
七、编写主函数入口文件main.js,加载应用程序,启动angular。
八、编写应用主文件app.js,定义应用的模块,加载模块。配置拦截机。
九、配置应用的全局依赖includes.js。
十、规划总体应用的模块、布局以及相关组件和互相的依赖关系。
十一、拦截机验证用户信息,权限信息。
具体目录说明如图:
一、规划模块的设计,定义先后端套接的数据结构。
二、在app的modules目录下面定义一个模块如system,而后到system定义一个module.js,定义模块的路由,启动该模块。
三、定义相应的controller、views、services、directives以及filters。
四、到system模块定义views须要的模版文件。
五、开发system解析模版的controller,后端提供须要的json接口的数据。
六、如需用到自定义指令和数据过滤器到相应的文件夹下面定义开发。在module.js文件的路由中指定其依赖的指令和过滤器。
七、先后端开始数据对接,权限验证。
一、下载nodeJS Server,安装到本地电脑。
二、安装grunt的命令行界面grunt-cli,sudo npm install grunt-cli -g。
三、在应用中创建一个grunt的文件夹,而且配置好一份package.json和Gruntfile文件。
四、安装grunt模块插件,经常使用模块有:npm install grunt --save-dev
检查js语法 : npm install grunt-contrib-jshint --save-dev
合并文件 : npm install grunt-contrib-concat --save-dev
压缩文件 : npm install grunt-contrib-uglify --save-dev
监控文件 : npm install grunt-contrib-watch --save-dev
删除文件 : npm install grunt-contrib-clean --save-dev
复制文件 : npm install grunt-contril-copy --save-dev
图像压缩 : npm insatll grunt-contril-imagemin --save-dev
压缩合并CSS : npm install grunt-contril-cssmin --save-dev
save-dev :自动将其添加到devDependencies配置段中,遵循tildeversion range格式。
五、到应用工程目录下的grunt目录,运行grunt命令。