我想升级我现有的Rails和Angular 1.x应用程序.我正在关注的NG-升级文件,看到有很多的依赖,包括systemjs,打字稿,TSD和其他一些JavaScript库.理想情况下会有一个angular-2 gem会有所有的依赖关系,但我无法找到它.接下来,我为每个依赖项寻找gem,但没有一个用于tsd.
切换到自定义构建策略是否有意义,以便我可以使用npm进行javascript包管理?我读到这一篇文章,建议一饮而尽,但我真的很喜欢这些资产管道的便利.
有人能指出我成功使用ng-upgrade和rails项目的例子吗?它是否使用像gulp这样的自定义构建解决方案,还是使用资产管道?
我的主要建议是尚未升级到Angular2,仍处于开发阶段,你将面临很多这样的问题,比如找不到rails的gem.
无论如何,目前,angular2 不能用sprockets编译(默认的rails管道),所以你真的想要一个自定义解决方案.
我的主要建议是使用webpack,其他选项是browserify或gulp(和其他),这主要是品味问题.总的来说,为angular2配置管道是很复杂的,你必须处理.d.ts
文件typings
(tsd
现在已经弃用了更新版本),如果你想使用async/await ,你必须通过tsc
也可能通过你的打字稿来编译.babel
(这真的很酷).您将失去image_path
使用自定义管道在类似轨道中引用文件的能力,因此您也想要考虑这一点.
打字稿比简单的coffeescript文件复杂得多,你依赖于它引用的每个其他文件,因为它需要对它进行编译检查,不要指望直截了当.
话虽这么说,如果你真的想使用Rails和Angular(2或不是),处理它的正确方法是有两个独立的项目,一个只有Rails应用程序,另一个有AngularJS路径.通过这种方式你可以分开关注,你可以为Angular2设置一个自定义管道,而不会影响Rails,你将被迫使用Rails作为JSON API正确编码你的Angular2应用程序.