Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/472.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ExecJS::ProgramError:语法错误:意外标记:名称<;类名>;_Javascript_Ruby On Rails_Ruby_Precompile_Execjs - Fatal编程技术网

Javascript ExecJS::ProgramError:语法错误:意外标记:名称<;类名>;

Javascript ExecJS::ProgramError:语法错误:意外标记:名称<;类名>;,javascript,ruby-on-rails,ruby,precompile,execjs,Javascript,Ruby On Rails,Ruby,Precompile,Execjs,我创建了一个JavaScript类(名为BarChart),它具有构造函数和几个init方法 我执行了下面的命令来为生产环境预编译资产,但出现了错误 用于预编译资源的命令:rake资源:预编译RAILS\u GROUPS=assets--trace 错误回溯: rake aborted! ExecJS::ProgramError: SyntaxError: Unexpected token: name (BarChart) (line: 24472, col: 6, pos: 952834)

我创建了一个JavaScript类(名为
BarChart
),它具有构造函数和几个init方法

我执行了下面的命令来为生产环境预编译资产,但出现了错误

用于预编译资源的命令:
rake资源:预编译RAILS\u GROUPS=assets--trace

错误回溯:

rake aborted!
ExecJS::ProgramError: SyntaxError: Unexpected token: name (BarChart) (line: 24472, col: 6, pos: 952834)

Error
    at new JS_Parse_Error (<eval>:3623:11948)
    at js_error (<eval>:3623:12167)
    at croak (<eval>:3623:22038)
    at token_error (<eval>:3623:22175)
    at unexpected (<eval>:3623:22263)
    at semicolon (<eval>:3623:22781)
    at simple_statement (<eval>:3623:25959)
    at <eval>:3623:23747
    at <eval>:3623:22954
    at <eval>:3624:3759
    at Object.parse (<eval>:3624:3999)
    at parse (<eval>:3958:22)
我在Gemfile中添加了
therubyracer
execjs
gem

Ruby
:2.2.5

导轨
:3.2.2`


PS:我已经在SO中检查了一些此类问题,但没有一个问题与JavaScript
类相关

在条形图js文件中,将所有
let
更改为
var

然后预编译应该会成功。

我已经在
ES6
中编写了JavaScript,rails 3在
ES6
代码中显示错误。在rails中使用
ES6
的所有方法都不适用于rails 3。因此,我将ES6转换为ES5代码。

在rails 5中,我解决了将文件从.js重命名为.js.ES6的问题。奇怪的是,我的临时部署成功了,而我的生产部署却没有成功。

似乎有两个请求来解决这个问题。有人能给我解释一下封闭式问题请求的原因吗?我还没有发现与JS类相关的问题。我投票决定关闭它,因为我不理解它-我不清楚。想象自己站在一个对你的问题毫无头绪的人的位置上,用一种人们能够理解的方式描述它。描述问题越好(不要与“越多”混淆),获得正确答案的机会就越高。请查看此链接。希望这对你有帮助@科德尔ღ谢谢你的回答,但我已经检查过了,这并不能解决我的错误。@AndreyDeineko我已经更新了问题,请检查。顺便说一句,感谢您提供结束问题的原因。rails仍然使用es5:(不,您可以对rails 5及其后使用ES(6/7)语法。我不能,例如使用
let
将不起作用。rails 6.0.0.1。
ExecJS
编译器。
class BarChart
{
    // code goes here
}