什么是使用rails资产管道的es6的最佳方式

Pal*_*gde 5 ruby-on-rails angularjs ecmascript-6

将ES6与rails资产管道一起使用的最佳方法是什么?我试图在我的angular-rails应用程序中编写一些es6语法,该应用程序使用rails资产管道.代码实际上在本地工作,但在尝试部署(数字海洋)时会抛出语法错误.堆栈跟踪

这是我在部署时遇到的错误.我试图运行的代码是

class Hello {
 constructor() {
 alert('Hello!');
 }
}

new Hello();
Run Code Online (Sandbox Code Playgroud)

小智 11

当前的uglifier版本不支持ES6,它处于实验模式,因此您需要手动启用ES6编译.

您将需要最新的uglifier gem版本.

:harmony => true在设置js_compressor时,可以使用选项启用ES6支持config/environments/production.rb:

config.assets.js_compressor = Uglifier.new(
    # ES6 support
    :harmony => true
)
Run Code Online (Sandbox Code Playgroud)

在这里查看官方文档

希望能帮助到你