【发布时间】:2011-09-20 08:28:21
【问题描述】:
在 Rails 3.1 中使用资产管道时,它会创建一个默认的application.js:
//= require jquery
//= require jquery_ujs
//= require_tree .
但是我什么时候需要包含我所有的 javascript?在大多数情况下,我们为不同的控制器/视图使用不同的 javascrips?
【问题讨论】:
-
我几乎从未尝试过如此细致地拆分我的 JavaScript;确保每一页都有必要的精确文件是不值得的。缩小的 gzip 压缩 JavaScript 大小非常小。
-
但是css呢? CSS没有命名空间(不像javascript),
require_tree .不是容易产生冲突吗? -
我几乎从来没有遇到过实质性的 CSS 冲突,但我想这可能是个问题,当然——但在这一点上,您不需要默认行为,因此删除默认配置似乎是合理的.记住——Rails 是固执己见的,并不是每个人都有相同的看法 :)
-
你的建议是合理的。谢谢
-
CSS 没有命名空间,但可以在模板中将 body id 设置为控制器名称,然后使用“#controller_name element”规则确保该元素仅在选定页面中具有该样式,对不起,如果我含糊其辞。
标签: ruby-on-rails ruby asset-pipeline