在使用Grunt过度复杂的经验之后,当前的构建过程很简单,只使用Gulp和Browserify来构建两个包:my-lib.js和my-app.js.这样,库比我的应用程序代码更大但更稳定,不需要经常编译,应用程序域代码的编译只需要0.1秒.我很高兴 – 以及其他开发人员.
现在我们期待迁移到Angular 2.0并希望在Typescript开始开发,但我不确定如何将其集成到构建过程中,甚至是如何实现它的最佳方法:是否应该优先使用tsc只是将Typescript编译成Javascript并让Browserify处理依赖关系?或者我应该使用tsc作为我的主要构建工具,让它解决依赖关系,创建映射文件并制作捆绑包?
Typescript和Gulp都在快速发展,我在他们的文档中找不到这种用法的文档(1,2).我希望有经验的人也能反馈这些技术的最新版本.
我们在我的组织中进行了非常类似的练习,直到最后.
我们已经使用了webpack来处理大部分内容,虽然webpack感觉很少grunt’y并且在gulp之后,我不是grunt的忠实粉丝.
我们使用webpack将ts转换为js,bunding,minification.我们还没有在js中使用html到js字符串或css.
关于di部分,你将不得不担心只有js到ts. ts到js不是问题,因为它是由angular的基于字符串的di来处理的.关于ts到ts,您需要定义所需的接口.这些将帮助你将这些js转移到ts.最好从具有最少依赖性的核心组件开始.
编辑
只是为了回答有关gulp优势的部分:特别是在迁移场景中,升级不会一次性发生,因此移动到TS的任何内容都应由tsc处理并保留为gulp.
还有gulp比ts到js要大得多,我们仍然用它来创建部署包,将js注入html,修复boostrap字体路径,将小图像转换为base64等等….