拆分Rails将Javascript资产分为头部和正文?

时间:2013-12-04 19:40:16

标签: javascript ruby-on-rails ruby-on-rails-4 asset-pipeline sprockets

将Javascript资源拆分为需要加载到标题中的脚本以及需要在正文中的脚本的最佳方法是什么?

例如,我现在有,

<%= javascript_include_tag "application", "data-turbolinks-track" => true %>

在我的主应用程序布局中的body标签的末尾。但我希望包含类似的内容,

<%= javascript_include_tag "application_head", "data-turbolinks-track" => true %>

在我的标题标记内。

如何将application.js拆分为两个单独的文件来完成此操作?请记住,我需要能够在两个文件中使用require_tree这样的方向,因此我不能单独包含每个脚本。

1 个答案:

答案 0 :(得分:2)

$ mkdir app/assets/javascripts/application
$ mkdir app/assets/javascripts/application_head

将您想要的东西复制到application_head目录中,其余部分复制到应用程序

应用程序/资产/ Javascript角/ application_head.js:

//= require_self
//= require_tree ./application_head

应用程序/资产/ Javascript角/ application.js中:

//= require_self
//= require_tree ./application
在config / application.rb中

,添加

config.assets.precompile << 'application_head.js'