使用Grunt将变量传递给SASS

Tem*_*ega 10 sass gruntjs

我希望能够根据Grunt参数"@import"使用SASS的文件.

随着咕噜声,我想:

grunt someTask --skinName=yellow
Run Code Online (Sandbox Code Playgroud)

在app.scss里面我想以某种方式使用这个参数:

@import "$skinName";
Run Code Online (Sandbox Code Playgroud)

一些背景......

这个skinName.scss包含许多带有颜色代码的SASS变量,因此我可以轻松地在整个应用程序中更改颜色.我应该在所有SASS @imports之前加入.

jgi*_*ich 18

您可以使用grunt在构建过程中编写的另一个scss文件来解决此问题:

grunt.registerTask('skin', function () {
    grunt.file.write('skin.scss', '@import "' + grunt.option('skinName') + '";');
});
Run Code Online (Sandbox Code Playgroud)

然后只需导入skin.scss你的app.scss.