在 Rails 使用 ES6
身為一位潮到不行der前端開發,使用 ES6 也是理所當然的事情。
不過呢,身為後端的 Rails 可不一定就那麼潮:
remote: Running: rake assets:precompile
remote: rake aborted!
remote: Uglifier::Error: Unexpected token: operator (>). To use ES6 syntax, harmony mode must be enabled with Uglifier.new(:harmony => true).
我想英文訊息已經很清楚了:如果你想用 ES6 語法,就要開啟 harmony 模式。
嗯,真和諧。
那怎麼做?錯誤訊息的 Uglifier 是個處理並壓縮 JavaScript 的程式。你需要下載他來用。首先,請輸入 gem install uglifier
安裝他。成功的話,去 config/environments/production.rb
,也就是上線環境設定檔找到:
config.assets.js_compressor = :uglifier
然後寫成:
config.assets.js_compressor = Uglifier.new(harmony: true)
Rails 就能吃 ES6 語法了。