Jquery 仅在Rails 3应用程序上需要的地方加载Javascript库

Jquery 仅在Rails 3应用程序上需要的地方加载Javascript库,jquery,ruby-on-rails-3,Jquery,Ruby On Rails 3,现在我的assets/javascript文件夹和application.js在每个render上都包含了20多个js库,但我刚开始与一两个库发生冲突 我的application.js如下所示: // //= require jquery //= require jquery_ujs //= require_tree . // 我想知道的是,如何仅在某些控制器和某些操作上调用某些库?而不是将它们全部加载到整个应用程序中。在生产环境中,它们被编译成一个文件。我认为对您的问题最好的答案是建议将所

现在我的
assets/javascript
文件夹和
application.js
在每个
render
上都包含了20多个
js
库,但我刚开始与一两个库发生冲突

我的
application.js
如下所示:

//
//= require jquery
//= require jquery_ujs
//= require_tree .
// 

我想知道的是,如何仅在某些控制器和某些操作上调用某些库?而不是将它们全部加载到整个应用程序中。

在生产环境中,它们被编译成一个文件。我认为对您的问题最好的答案是建议将所有这些脚本原子化,这样它们就不会相互影响,并保留所有这些文件。

在任何模板文件中,即使是部分模板文件,您都可以这样做,例如:

<% content_for :head do %>
  <%= javascript_include_tag "jquery.collapsibleFieldset" -%>
<% end %>

我使用的是rails 3.0.9,因此没有启用默认的js scrunch。但是,我相信(假设)包含在单个模板(而不是布局中)中的js文件将被排除在scrunch之外,在这种情况下,这应该可以正常工作

如果有助于解决某些依赖关系,还可以创建多个布局。例如,如果说您的应用程序的一部分用于管理相关功能,如cms,而另一部分用于消费者相关功能。

这可能会对您有所帮助