标签: ruby-on-rails asset-pipeline
我注意到在生成新的Rails 4.2应用程序后, application.css 中的需求顺序已更改。
*= require_tree . *= require_self
这不应该是另一种方式吗?即使在Guides中也不是这样......
答案 0 :(得分:4)
进行更改是为了允许application.css中定义的样式覆盖以前包含的样式。
application.css
请参阅更改require说明顺序的Rails issue #11639和this commit。
require
答案 1 :(得分:1)
如官方文档here中所述,并在此SO回答here中进行了解释:
这会将包含在文件中的CSS(如果有)放在require_self调用的精确位置。
这与我在评论中写的略有不同,因为如上面的引用所示,清单中的JS或CSS将插入require_self的位置。如果您的后续资产依赖于您在清单中写下的内容,这就变得非常重要。
require_self
当然,如果您正在这样做,那么将“内联”资产放在单独的文件中可能会更好,只是为了保持清单清洁。