1

我的目标是在使用gulp -ruby-sass 时使用一个带有n 个资产部分的scss 文件来创建n 个css 样式表。

这是我的目录结构的示例:

- project_folder
   gulpfile.js
   - css
      _asset.scss
      style.scss

在“gulpfile.js”里面会有以下内容:

var gulp = require('gulp');
var sass = require('gulp-ruby-sass');

gulp.task('build', function() {
    return sass([
            'css/_asset.scss',
            'css/**/*.scss'
        ])
        .pipe(gulp.dest('css'));
});

gulp.task('default', ['build']);

在“_asset.scss”里面会有以下内容:

$textColor: #444444;

在“style.scss”里面会有以下内容:

//@import "_asset";
.myTextColor {
    color: $textColor;
}

通过运行 gulp 我会得到错误:

错误 css/style.scss(第 3 行:未定义变量:“$textColor”。)

假设我要取消注释 style.scss 中的第 1 行。然后运行 ​​gulp 应该正确编译 style.scss 以创建 style.css,但取消注释第 1 行不是我正在寻找的答案。我需要 gulp 使用 gulp-ruby-sass 或其他插件来完全执行 style.scss 上的第 1 行正在执行的操作,或者类似的操作,并获得相同的结果。

PS(希望通过这个解决方案,我可以使用“gulp-rename”并能够使用多个资产文件生成多个 css 样式表,并且只使用一个 scss 文件!)

4

0 回答 0