在Rails资产管道中解决依赖顺序的最佳方法是什么?

时间:2013-07-03 17:01:23

标签: ruby-on-rails asset-pipeline

我有一个RoR应用程序,它使用大量单独的.less文件来构建我的样式。我有一个master .less文件(config.less),其中包含其他文件使用的变量。我可以手动浏览每个子文件并添加@import语句,但我有很多,这似乎不是最好的方法。如果我使用*= require_tree .,是否有标准的方式设置某个订单?

我尝试在require_tree上面加上

来包含它
...
*= require 'less/config'
*= require_tree .

但我在后续.less文件中仍然收到错误,抱怨它无法在config中找到值

variable @base is undefined
  (in /Users/me/project/app/assets/stylesheets/less/mixins.less)

1 个答案:

答案 0 :(得分:4)

标准方法是使用*= require_tree .并单独指定导入/需要行。

来自 Rails Guide

  

指令从上到下进行处理,但未指定require_tree包含文件的顺序。您不应该依赖这些中的任何特定顺序。如果您需要确保某些特定的JavaScript最终高于连接文件中的其他一些,则首先需要清单中的先决条件文件。请注意,require指令系列可防止文件在输出中包含两次。