2017-02-25 38 views
14

Mam aplikację 4.2 szyn i rozważam powolne konwertowanie JS na ES6. Teraz używam standardowego pliku manifestu szyn z potoku zasobów do wstępnego przetworzenia mojego js.Jak używać ES6 (ES2015) w aplikacji Ruby on Rails?

Nie jestem pewien, jak rozpocząć korzystanie z ES6 (dodając krok transpile) w mojej aplikacji rails.

Czy istnieje metoda wbudowana, zalecane narzędzie lub przepływ pracy?

+1

Szybkie wyszukiwanie google pokazuje [ten artykuł] (http://nandovieira.com/using-es2015-z-rozstawieniem-pipeline-on-ruby-on-rails), może ci się przydać. –

+0

Chcesz użyć Babel. Ten klejnot może zrobić to za Ciebie. https://github.com/babel/ruby-babel-transpiler –

Odpowiedz

12

Obecnie nie ma tak naprawdę "standardowego" sposobu robienia tego - wiele zależy od wymagań twojej aplikacji i czy jesteś w stanie ulepszyć zębatki i/lub szyny.

Wariant 1: Stay on Rails 4.2 i koła łańcuchowe 3, a następnie użyć tego klejnotu, aby dodać obsługę ES6 i stopniowo migrować do ES6 moduły: https://github.com/rmacklin/sprockets-bumble_d

Opcja 2: Upgrade do Koła łańcuchowe 4 (wciąż w wersji beta), a następnie użyj https://github.com/fnando/babel-schmooze-sprockets lub https://github.com/babel/ruby-babel-transpiler, aby dodać obsługę babel dla ES6. Oba mają dość solidną dokumentację.

Opcja 3: Użyj zestawu plecaka zamiast lub obok zębatek. Wyszukiwarka Google wykaże kilka podejść do tego. Rails 5.1 (nadal w wersji beta) wprowadzi wsparcie dla rodzimego webpacka (a tym samym babel) poprzez webpacker gem. Wprawdzie może to być trudniejsza opcja dla istniejącej aplikacji. Tutaj jest dobry artykuł: https://medium.com/statuscode/introducing-webpacker-7136d66cddfb#.cb4sixyah