在布局中解释coffeescript

时间:2012-01-12 11:03:31

标签: ruby-on-rails coffeescript erb asset-pipeline

我正在使用content_for添加一些特定于视图的.js代码到页面标题中

<% content_for :head do %>
  <script lang="text/javascript">
    $.getJSON("<%= book_chapters_path(@book) %>", function(data){

    });
  </script>
<% end %>

现在如何将js代码切换到coffescript,我可以放入代码块告诉rails将其转换为javascript,甚至只需添加“lang / coffeescript”,然后rails就可以处理它。

2 个答案:

答案 0 :(得分:3)

布局:

<% content_for :head do %>
  <%- javascript_tag do %>
    <%= render :partial => "cs/coffee-partial" %>
  <%- end %>
<%- end %>

cs/coffee-partialviews/cs/_coffee-partial.html.coffee的位置。 您甚至可以将局部变量传递给render并将它们输出到您的咖啡部分:

<%= render :partial => "cs/coffee-partial", :locals => {:version => '0.1', :name => 'varName'} %>

然后:

lib =
  version: '<%= version %>'
  '<%= name %>': 'some value'

答案 1 :(得分:1)