@bornkiller
2016-09-06T11:33:01.000000Z
字数 947
阅读 2021
angularjs
无论是日常学习,还是开展新项目,如果能够自动生成base template
,无疑可以更快的启动,减少更多的时间浪费,所以,开发一个强制性要求更高的generator
无疑是最好的选择。至于为何选择yeoman
,而不选择slush
,这个简单,主要通过commit
判定项目维护状态。
从generator
的角度,需要达成以下目标:
editorconfig
, gitignore
, eslint
, babel
, gulp
, sass
webpack
, karma
, package.json
, README.md
, Makefile
等等基础模板。service
, controller
, router
, filter
, directive
等等,同时保证基础测试文件同步,基于不同构建工具,甚至可以选定module
。gulp
, webpack
,建议通过option
选项来实现,基于此完成第二条目标。从项目管理角度考量,需要达成以下目标:
editorconfig
, eslint
, sasslint
, htmlint
, babel
工具来强制要求,其中可能分别包含多个文件。gulp
, webpack
两种风格的代码,需要提供两套模板,两种生成方式。live-reload
,分别对应browsync
, hot-module reload
两种使用方式。支持自动注入,避免手动导致的效率低下。ansible
+ gitlab-ci
的组合。jquery
, underscore
, ui-router
等等。constructor
,可以选择跳过;option
,argument
,私有方法需要建立在constructor
;sub generator
需要相互妥协;