javascript - ruby on Rails - 无法运行javascript

标签 javascript html ruby-on-rails ruby

我是 Ruby 新手,正在关注 http://guides.rubyonrails.org/getting_started.html我是 坚持销毁这篇文章。它不会弹出要删除的对话框,而只会重定向到文章。有人可以帮我删除这篇文章吗?我知道这与 javascript 有关,但无法弄清楚。提前致谢。

这些是我的设置:

gem 文件

# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '4.2.3'
# Use sqlite3 as the database for Active Record
gem 'sqlite3'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 5.0'
# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'
# Use CoffeeScript for .coffee assets and views
#gem 'coffee-rails', '~> 4.1.0'
# See https://github.com/rails/execjs#readme for more supported runtimes
gem 'therubyracer', platforms: :ruby
gem 'execjs'

# Use jquery as the JavaScript library
gem 'jquery-rails'
# Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks
gem 'turbolinks'
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 2.0'
# bundle exec rake doc:rails generates the API under doc/api.
    gem 'sdoc', '~> 0.4.0', group: :doc
...

application.html.erb

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

javascript 行在浏览器中给了我一个 execjs 错误,因此我将“应用程序”更改为“默认”,结果没问题。

application.js

...
//= require jquery
//= require jquery_ujs
//= require turbolinks
//= require_tree .

index.html.erb

...    
<% @articles.each do |article| %>
    <tr>
      ...
      <td><%= link_to 'Destroy', article_path(article),
              method: :delete,
              data: { confirm: 'Are you sure?' } %></td>
    </tr>
  <% end %>

最佳答案

我发现你已经有了:

gem 'therubyracer', platforms: :ruby
gem 'execjs'

在你的 Gemfile 中。

你应该运行:

捆绑安装

安装gems并重新启动服务器。 之后一切都应该正常!

或者,只需安装另一个 Javascript 运行时库,例如 Node.js它应该可以工作!

更新

application.html.erb 文件中的 defaults 替换为 application 并添加:gem 'coffee-script-source' 到您的 Gemfile 并运行:bundle install

您的问题现在应该已解决。

关于javascript - ruby on Rails - 无法运行javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31901372/

相关文章:

javascript - 滚动后如何在导航栏中创建淡入淡出?

ruby-on-rails - Capybara Webkit 运行时警告 : Class is implemented in both

html - 使文本在 div 中可滚动

ruby-on-rails - 如何生成带有数字的随机单词?

javascript - 嵌套 Bootstrap Collapse 事件类问题

javascript - 如何使用 javascript 停止 gif 动画以防止内存和 CPU 消耗过高

html - Grails response.sendError 不渲染 gsp 标签

javascript - json:如何将 json 字符串转换为 javascript 对象

javascript - 一旦 div 离开屏幕,将其隐藏并使用户保持在页面上的相同位置

javascript - 以编程方式从单个 HTML 元素中删除 CSS 样式规则