如何使用单个@import将宝石中的SCSS变量公开到Rails项目中

时间:2018-08-14 01:04:18

标签: ruby-on-rails ruby sass rubygems

我有一个rails项目和一个gem。 rails项目包含.scss个文件,这些文件需要gem中的变量:

轨道项目

application.scss:

@import "gem-styles.scss";  
@import "my-scss-file-that-needs-access-to-variables.scss"

需要访问variables.scss的my-scss文件:

color: $primary-color;

宝石

在gem-styles.scss中:

@import "common/variables";

common / _variables.scss中的

$primary-color: #00d9ff;

这样做,我得到错误:Undefined variable: "$primary-color".

我可以在common/variables中加入my-scss-file-that-needs-access-to-variables.scss来解决此问题:

@import "common/variables";

但是我发现该解决方案不够干。我将必须将common/variables导入到每个需要它们的.scss文件中。我希望只能从gem导入一个.scss文件,该文件包含我需要在父应用程序中公开的所有变量以及gem-styles.scss的其余样式。 / p>

1 个答案:

答案 0 :(得分:0)

您只能将此@import "common/variables";粘贴到application.scss中一次。

@import "common/variables";
@import "gem-styles.scss";  
@import "my-scss-file-that-needs-access-to-variables.scss"

像这样