我在尝试使用bootstrap gem时创建了一个新的RoR应用程序但是我第一次运行它时遇到了一些问题。 看起来Ruby很难包括scss文件
ExecJS::ProgramError in Visitor#index
Showing */app/views/layouts/guest.erb where line #8 raised:
identifier '(function(opts, pluginOpts) {return eval(process' undefined
Guest.erb
<!DOCTYPE html>
<html>
<head>
<title>FooBar</title>
<%= csrf_meta_tags %>
<%= csp_meta_tag %>
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %>
</head>
<body>
<%= yield %>
</body>
</html>
应用。 SCSS
* ...........
* It is generally better to create a new file per style scope.
*
*/
@import "bootstrap";
宝石文件
ruby '2.4.4'
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '~> 5.2.0'
# Use sqlite3 as the database for Active Record
gem 'sqlite3'
# Use Puma as the app server
gem 'puma', '~> 3.11'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 5.0'
#Bootstrap
gem 'bootstrap', '~> 4.1.1'
答案 0 :(得分:4)
从您的Gemfile中删除 duktape gem并确保已安装Node.js或其他内容。对于指向https://github.com/rails/execjs#readme的替代品应该有评论。
答案 1 :(得分:-1)
消息“标识符”(函数(opts,pluginOpts){return eval(进程'undefined'看起来像一个JavaScript问题。该文本与此Rails Autoprefixer中的代码匹配。不幸的是,我不知道知道一个快速修复建议,但由于该函数的选项采用文件名,我会仔细检查以确保样式表文件名中没有任何拼写错误(即,文件本身以及它们可能被引用的位置) )。