Rails で ES6 のコンパイルが失敗する場合

エラーメッセージ

Uglifier::Error: Unexpected token: name (foobar_foobar). To use ES6 syntax, harmony mode must be enabled with Uglifier.new(:harmony => true).

結論

config/environments/production.rb を以下のように書き換えましょう*1

変更前(エラーが出る設定)

  config.assets.js_compressor = :uglifier

変更後(エラーが出ない設定)

  config.assets.js_compressor = Uglifier.new(harmony: true)

答え

*1:production.rb のデフォルトの設定がエラーが出る設定になっているので production.rb を書き換える、と決め打ちで書いちゃってますが、他の環境の場合でも同様です

Powered by はてなブログ