1

.scss在我的 Rails 应用程序中使用文件,之前我使用的是:

@import "bootswatch/superhero/variables";
@import "bootswatch/superhero/bootswatch";

但我想做类似的事情:

$theme: 'superhero';
@import "bootswatch/#{$theme}/variables";
@import "bootswatch/#{$theme}/bootswatch";

不幸的是,这不起作用,变量没有被嵌入。当我想更改主题时,我该如何做才能避免application.css.scss多次更改?

其他没有成功的尝试

@import "bootswatch/" + $theme + "/variables";

$theme_variables: "/bootswatch/#{$theme}/variables";
@import $theme_variables;
4

1 回答 1

2

看起来你不能:

导入可能包含 #{} 插值,但只有某些限制。无法基于变量动态导入 Sass 文件;插值仅适用于 CSS 导入。因此,它仅适用于 url() 导入。”

http://sass-lang.com/docs/yardoc/file.SASS_REFERENCE.html#import

这可能是因为它试图通过计算依赖关系来最小化导入之间的重新编译——我想动态导入会变得非常困难。

我建议每个主题都有一个主文件并导入它。

于 2012-12-03T22:52:08.703 回答