【发布时间】:2012-08-02 00:24:22
【问题描述】:
我有一个控制器#action,它定义了一个实例变量:
@min_rating = 4
在视图中我有以下内容:
<%= javascript_tag do %>
min_rating = <%= @min_rating %>
<% end %>
然后在我的 Coffeescript 中,我可以执行以下操作:
jQuery ->
alert min_rating
如果我在该视图的页面上,它可以正常工作。
但是,如果我在另一个视图中,我会收到一个 JS 错误,指出未定义 var min_rating:
Uncaught ReferenceError: min_rating is not defined
这是因为我为 application.js 中的所有视图加载了所有 JS:
//= require_tree .
所以,我的问题是:在 Rails 中处理这个问题的最佳方法是什么?
【问题讨论】:
-
有人建议我使用 "//= require_self" 或者您可以删除整个语句 //= require_tree 。请尝试并更新
-
你可能想看这个house9.blogspot.com/2011/05/rails-31-javascript-execution.html - 使用 rails assest pipeline / coffeescript 执行 javascript 的不同选项
标签: javascript ruby-on-rails instance-variables