我在预编译到Heroku时遇到了一个问题,我检查了Stack overflow以找到一个调试方法,它是:
JS_PATH = "app/assets/javascripts/**/*.js";
Dir[JS_PATH].each do |file_name|
puts "\n#{file_name}"
puts Uglifier.compile(File.read(file_name))
end当我使用这个命令运行rail控制台时,它在application.js中给出了一个错误,即
app/assets/javascripts/application.js
ExecJS::RuntimeError: SyntaxError: Unexpected token: punc ())
from get@(execjs):3538:630以下是我的application.js文件,当有人从主题列表中进行选择或在课程字段中输入内容时,我将尝试加载该文件。该程序在本地运行时运行良好,但无法在Heroku上部署。你能告诉我我在哪里跑步吗?因为我真的找不到了。
//= require jquery3
//= require rails-ujs
//= require turbolinks
//= require_tree .
//= require tether
//= require popper
//= require bootstrap
$(document).on('turbolinks:load', () => {
$('#course').on('input', function() {
if (this.value.length > 1) Rails.fire($('.search-form')[0], 'submit')
})
$('#subject').on('change', () => Rails.fire($('.search-form')[0], 'submit'))
})发布于 2019-05-15 18:28:48
目标机器上节点的版本可能比您本地的版本低,不支持ES5+ js语法。与此相关的是:SyntaxError: Unexpected token ) ES6 giving SyntaxError: Unexpected token )
https://stackoverflow.com/questions/53047353
复制相似问题