Ala*_*ano 6 ruby ruby-on-rails asset-pipeline
我有一个Rails应用程序.还有一个javascript(javascript1.js)文件必须包含在每个视图的最底部.我把它放到/ assets/javascripts文件夹中.Application.js包含以下代码
//= require jquery
//= require jquery_ujs
//= some other files
//= require_directory .
Run Code Online (Sandbox Code Playgroud)
即使不包括javascript1.js在Application.js,它会自动地包含,不会吧?
那我怎么能做我想要的呢?
单独定义,包含和执行您的JavaScript.
这就是我要做的事情:
javascript1.js在函数中.现在解释javascript文件的时间并不重要,因为解释该文件只会添加一个函数供以后使用render电话或a javascript_include_tag),然后自动包含在每个视图中javascript1.js.回应第一条评论:
当然,您可以跳过步骤1和3并将javascript添加到您的layouts/application.html.erb使用中,例如
<%= javascript_include_tag "javascript1" %>
Run Code Online (Sandbox Code Playgroud)
(假设您正在使用erb模板并假设文件位于javascript_include_tag方法将自动找到它的位置(请参阅http://guides.rubyonrails.org/layouts_and_rendering.html).
回应第二条评论:
没错,我对你的第一条评论的回应没有解决这个问题.没有简单的方法可以从资产管道中排除文件,因为清单文件明确列出了要包含的内容.一个解决方案是移动的一切,除了javascript1.js要assets/javascripts/all和更改//= require_directory .到//= require_directory all.另外,丑陋但实用的解决方案是增加//= require_self在底部和内容添加javascript1.js到application.js
| 归档时间: |
|
| 查看次数: |
4544 次 |
| 最近记录: |