单独定义、包含和执行您的 javascript。
这是我要做的:
- 将您的代码包装
javascript1.js
在一个函数中。现在解释javascript文件的时间并不重要,因为解释该文件只是添加一个函数供以后使用
- 将“javascript_footer”视图添加到布局中(例如通过
render
call 或 a javascript_include_tag
),然后自动包含在每个视图中
- 在该页脚中,调用
javascript1.js
.
回应第一条评论:
当然,您可以跳过第 1 步和第 3 步,并将 javascript 添加到您的layouts/application.html.erb
使用中,例如
<%= javascript_include_tag "javascript1" %>
(假设您正在使用 erb 模板并假设文件位于该javascript_include_tag
方法会自动找到它的位置(请参阅http://guides.rubyonrails.org/layouts_and_rendering.html)。
针对第二条评论:
诚然,我对您的第一条评论的回复并没有解决这个问题。没有简单的方法可以从资产管道中排除文件,因为清单文件明确列出了要包含的内容。一个解决方案是移动除javascript1.js
toassets/javascripts/all
和 change //= require_directory .
to之外的所有内容//= require_directory all
。另一个丑陋但实用的解决方案是//= require_self
在底部添加并将内容添加javascript1.js
到application.js