我的视图中有一个file.js.erb
文件,但我需要在<head></head>
版面中加载此文件。
是否可以在<head></head>
部分加载这些文件?
如果有可能,我该怎么做?
谢谢!
答案 0 :(得分:2)
:
<head>
<script><%=render :file => "layouts/file.js"%></script>
</head>
如果文件包含脚本标记,那么您在布局中就不需要它们,并将路径中的布局更改为文件实际所在的位置。
如果您不想在每个页面上使用它,那么您可以使用content_for和yield(正如MyYorshiji在评论中所建议的那样)
<head>
<script><%= yield :extra_js %> </script>
</head>
在html.erb视图中,您希望此js加载
<%content_for :extra_js do %>
<%=render :file => "layouts/file.js"%>
<% end %>
http://api.rubyonrails.org/classes/ActionView/Helpers/CaptureHelper.html#method-i-content_for