我不太明白Rails是如何包含JavaScript文件的,Google和下面的文档并没有解决我的问题:
http://railsapps.github.io/rails-javascript-include-external.html
http://guides.rubyonrails.org/asset_pipeline.html
我知道Rails使用清单文件(例如applications.js)将每个包含的JavaScript文件打包到一个大文件中(性能原因等)。
在application.html.erb中,您需要包含此清单,例如
<%= javascript_include_tag :application %>
我在**/app/assets/**中添加了一个JavaScript文件(例如my_javascript. js)。
所以,如果我查看源代码,我可以找到
<script src="/assets/application.js" type="text/javascript"></script>
如果打开该文件,my_javascript. js的内容将呈现在application. js文件中。
我的问题:函数不工作,但是如果我直接在应用程序中包含my_javascript. js,就像
<%= javascript_include_tag "my_javascript" %>
当然,它会呈现第二个script-tag,例如:
<script src="/assets/my_javascript.js" type="text/javascript"></script>
最后,为什么如果我将函数包含在specific中,而如果我使用清单(它应该如何使用),函数就可以工作?我需要考虑关于Assets-Pipeline的一些特殊情况吗?我的清单包括
//= require_tree .
但我甚至试过
//= require my_javascript
我使用的是Rails 3.2.3和Ruby 1.9.3。
先谢谢你!
1条答案
按热度按时间cpjpxq1n1#
尝试放入
Application
布局head
标签之间的<%= yield :head %>
。