@bornkiller
2016-09-06T03:33:01.000000Z
字数 947
阅读 2313
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需要相互妥协;