我正在使用许多SCSS样式表升级Rails应用程序以使用资产管道,并且需要为每个文件包括一些全局变量和mixins。
@import
在每个文件的顶部添加几个指令不是很干,所以我想做这样的事情:
# application.css
/*
*= require variables
*= require mixins
*= require_tree .
*/
当然这是行不通的,因为变量不会在文件中持久保存。有人知道如何实现这一目标吗?
我正在使用许多SCSS样式表升级Rails应用程序以使用资产管道,并且需要为每个文件包括一些全局变量和mixins。
@import
在每个文件的顶部添加几个指令不是很干,所以我想做这样的事情:
# application.css
/*
*= require variables
*= require mixins
*= require_tree .
*/
当然这是行不通的,因为变量不会在文件中持久保存。有人知道如何实现这一目标吗?
简单地从每个Scss或Sass文件中导入必要的文件似乎对我有用。例如,我有一个colors.scss文件,其中包含一些常量,如下所示:
$black: #222;
我需要在application.css清单以及其他文件中使用它:
/*
*= require colors
*= require buttons
*/
在我的button.css.scss文件中,我只是这样做以避免发生错误:
@import "colors";
将require替换为@import,并删除所有内容,= require
即使您认为已将其注释掉也是如此。
默认的清单语法不够强大,无法为您提供有用的Sass功能,例如共享变量,mixins等。相反,您应该:
而不是使用
废话,你现在应该使用
这将确保您在整个项目中都能充分利用变量和混合变量,并在Sass允许的情况下保持DRY状态。