在Rails 5中,我使用以下宝石创建了一个新应用

gem 'devise'
gem 'execjs'
gem 'therubyracer', :platforms => :ruby
gem "less-rails" #Sprockets (what Rails 3.1 uses for its asset pipeline) supports LESS
gem 'bootstrap', '~> 4.1.1'
gem 'bootstrap-glyphicons'
gem 'simple_form'
gem 'sprockets'
gem 'jquery-rails'
gem "letter_opener_web"
gem 'will_paginate', '~> 3.1.0'
gem 'local_time'


在application.html.erb文件中,

<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': true %>
<%= javascript_include_tag 'application', 'data-turbolinks-track': true %>


在application.js中,

 //= require rails-ujs
 //= require jquery
 //= require jquery_ujs
 //= require activestorage
 //= require popper.min
 //= require local-time
 //= require bootstrap
 //= require_tree .


当我启动服务器并打开localhost:3000时,出现类似Current ExecJS runtime does't support ES6. Please install latest Node.js.的错误

我也尝试通过sudo apt-get install nodejs修复它,但显示相同的错误。而node -vv8.11.2

请帮我解决这个问题。

最佳答案

我想execjs试图使用作为旧版apt软件包安装的nodejs。您可以创建链接nodejs-> node作为execjs,首先查找nodejs,然后查找node:

ln -s $(which node) $(which node)js


或者只是从apt软件包中删除安装的nodejs:

apt-get remove nodejs


execjs将使用节点

关于jquery - Rails 5-当前的ExecJS运行时不支持ES6。请安装最新的Node.js,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51415778/

10-09 13:14