预编译到Heroku时遇到问题,我检查了堆栈溢出以找到调试方法:
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 console时,它在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'))
})
答案 0 :(得分:0)
目标计算机中节点的版本可能低于本地版本,并且不支持ES5 + js语法。
与此有关:
SyntaxError: Unexpected token )
ES6 giving SyntaxError: Unexpected token )