Rails - 必需的资产文件,@ import和全局范围变量

时间:2012-09-03 13:12:34

标签: ruby-on-rails-3 sprockets

我有一堆单独的文件,其中包含我在项目范围内使用的变量。由于变量不会在整个项目中通过不同的scss文件持续存在,因此我必须在我的application.css.scss文件开始后立即导入它们:

@import "filename.css.scss"
/*
 *= require jquery-ui
 */

现在我通过@import导入的所有内容都会立即导入,没有任何问题。我尝试通过链轮导入的所有东西都被忽略了;因此,如果我使用@import指令手动导入每个SCSS文件,那么它将很好地导入 - 这意味着应用程序可以访问文件。知道什么可能是错的吗?

我正在使用rails v 3.2.6,sprockets 2.1.3。

1 个答案:

答案 0 :(得分:0)

在花了一些时间浏览网页和阅读链轮文档后,我发现了以下内容:

Sprockets只解析文件的开头(直到它到达第一个注释块的末尾),所以:

@import "filename.css.scss"
/*
 *= require jquery-ui
 */

这将导入filename.css.scss,但会忽略 * = require jquery-ui 指令。

/*
 *= require jquery-ui
 */
@import "filename.css.scss"

这样可以正常工作并加载jquery-ui然后导入filename.css.scss。

希望这将有助于将来。