【问题标题】:Gulp task to copy over all files in a directory, compile all SCSS files, leave others untouched?Gulp 任务复制目录中的所有文件,编译所有 SCSS 文件,不影响其他文件?
【发布时间】:2016-11-12 17:40:57
【问题描述】:

我在scss 目录中有一堆文件:

scss/
  file.scss
  anotherfile.scss
  image.jpeg
  dir/
    other.ttf

我希望 gulp 将其编译为:

css/
  file.css
  anotherfile.css
  image.jpeg
  dir/
    other.ttf

目前它编译所有 .css 文件,但它不会复制任何其他文件。

这是我目前拥有的;

const path2 = require('path');
...
gulp.task('sass', function() {
  gulp.src("./scss/*.scss")
    .pipe(sass({outputStyle: 'compressed'}))
    .on('error', onError)
    .pipe(rename (function (path) {
      path.dirname = path.dirname.replace(path2.sep + "scss", path2.sep + "css");
      path.extname = ".css";
    }))
    .pipe(gulp.dest('./'));
});

我该怎么做?

谢谢。

【问题讨论】:

    标签: javascript css sass gulp


    【解决方案1】:
    gulp.task('sass', function() {
      gulp.src("scss/*.scss")
        .pipe(sass({outputStyle: 'compressed'}))
        .on('error', onError)
        .pipe(gulp.dest('css/'));
      // copy everything except *.scss & *.sass
      gulp.src([
        "scss/**/*",
        "!scss/**/*.{sass,scss}"
        ])
        .pipe(gulp.dest('css/'));
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-02-11
      • 1970-01-01
      • 2019-10-27
      • 1970-01-01
      • 2015-01-16
      • 2017-06-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多