2017-02-25 15 views
14

我有一個4.2 rails應用程序,並且正在考慮將JS慢慢轉換爲ES6。現在我使用資產管道中的標準rails清單文件來預處理我的js。如何在Rails應用程序中使用ES6(ES2015)?

我不知道如何去開始在我的Rails應用程序中使用ES6(添加一個transpile步驟)。

是否有內置方法或建議的工具或工作流程?

+1

快速谷歌搜索顯示[本文](http://nandovieira.com/using-es2015-with-asset-pipeline-on-ruby-on-rails)可能對你有用。 –

+0

你想使用巴貝爾。這寶石可能會爲你做。 https://github.com/babel/ruby-babel-transpiler –

回答

12

目前不幸的是,這樣做並沒有真正的「標準」方式 - 很大程度上取決於您的應用程序的要求,以及是否能夠升級Sprockets和/或Rails。

選項1: 保持on Rails的4.2和鏈輪3,然後使用此寶石添加ES6支撐並逐漸遷移到ES6模塊:https://github.com/rmacklin/sprockets-bumble_d

選項2: 升級到鏈輪4(靜止在測試版中),然後使用https://github.com/fnando/babel-schmooze-sprocketshttps://github.com/babel/ruby-babel-transpiler爲ES6支持添加babel。兩者都有非常可靠的文檔。

選項3: 使用webpack代替或沿着鏈輪。谷歌搜索將揭示一些方法。 Rails 5.1(仍在測試版)將通過webpacker gem引入本地webpack(以及babel)支持。無可否認,對於現有的應用來說,這可能是更困難的選擇。這裏有一篇很好的文章:https://medium.com/statuscode/introducing-webpacker-7136d66cddfb#.cb4sixyah

相關問題