忽略 Gulp 任务中的 SCSS/SASS 部分
Ignoring SCSS/SASS partials in Gulp task
我有以下结构:
├── assets
│ └── css
│ └── output.css
├── gulpfile.js
├── index.html
├── package.json
└── scss
├── some-other.css
├── _base.scss
├── _config.scss
├── _helpers.scss
├── _home.scss
└── main.scss
我正在使用 Gulp 将 scss/
中的 CSS 和 SCSS 文件编译成 assets/css/
中的一个文件。这是我 gulpfile.js
:
的相关任务
gulp.task('build-css', function() {
return gulp.src(['scss/**/*.scss','scss/**/*.css'])
.pipe(concat('output.css'))
.pipe(sass())
.pipe(gulp.dest('assets/css'));
});
问题是我的 SCSS/SASS 部分文件(那些在 scss/
中以下划线开头的文件被送入任务并最终失败。
我想忽略 scss/
中以下划线开头并以 .scss
结尾的文件。
我查看了以下内容,但无法正常工作:
- Gulp doesn't ignore SASS partials with underscore
- How can I use a glob to ignore files that start with an underscore?
看来我被误导了,使用链接问题中的建议我实际上能够通过以下方式解决这个问题:
gulp.task('build-css', function() {
return gulp.src('scss/**/[^_]*.?(s)css')
.pipe(concat('output.css'))
.pipe(sass())
.pipe(gulp.dest('assets/css'));
});
抱歉打扰了 - 在问这个问题之前,我应该进行更彻底的测试。不过,希望这对某人有所帮助。
我有以下结构:
├── assets
│ └── css
│ └── output.css
├── gulpfile.js
├── index.html
├── package.json
└── scss
├── some-other.css
├── _base.scss
├── _config.scss
├── _helpers.scss
├── _home.scss
└── main.scss
我正在使用 Gulp 将 scss/
中的 CSS 和 SCSS 文件编译成 assets/css/
中的一个文件。这是我 gulpfile.js
:
gulp.task('build-css', function() {
return gulp.src(['scss/**/*.scss','scss/**/*.css'])
.pipe(concat('output.css'))
.pipe(sass())
.pipe(gulp.dest('assets/css'));
});
问题是我的 SCSS/SASS 部分文件(那些在 scss/
中以下划线开头的文件被送入任务并最终失败。
我想忽略 scss/
中以下划线开头并以 .scss
结尾的文件。
我查看了以下内容,但无法正常工作:
- Gulp doesn't ignore SASS partials with underscore
- How can I use a glob to ignore files that start with an underscore?
看来我被误导了,使用链接问题中的建议我实际上能够通过以下方式解决这个问题:
gulp.task('build-css', function() {
return gulp.src('scss/**/[^_]*.?(s)css')
.pipe(concat('output.css'))
.pipe(sass())
.pipe(gulp.dest('assets/css'));
});
抱歉打扰了 - 在问这个问题之前,我应该进行更彻底的测试。不过,希望这对某人有所帮助。