javascript - 将 gulp-sourcemaps 与 gulp-csso 和 gulp-sass 结合起来

标签 javascript node.js gulp gulp-sass gulp-sourcemaps

我正在尝试让我的 gulpfile.js 的这一部分工作:

gulp.task('compileSass', function() {
    return gulp.src(folders.src+'/scss/*scss')
    .pipe(sass())
    .pipe(gulp.dest(folders.dest+'/css'));
});

gulp.task('minifyStyles', ['compileSass'], function() {
    return gulp.src(folders.dest+'/css/style.css')
    .pipe(maps.init())
    .pipe(minCss({
        sourceMap: true
    }))
    .pipe(maps.write('./'))
    .pipe(rename('style.min.css'))
    .pipe(gulp.dest(folders.dest+'/css'));
});

我希望开发工具能够显示 .scss 文件。我不确定这是否与 rename() 有关,或者是否我在错误的时间调用了我的源映射,但是当我检查开发工具时,源始终是 style.min.css

最佳答案

我没有看到您的 sass 任务的初始映射。您需要调用此两次,并根据 docs 适当设置 loadMaps 。尝试以下操作...

gulp.task('compileSass', function() {
  return gulp.src(folders.src+'/scss/*scss')
  .pipe(maps.init()) /* `init` here */
  .pipe(sass())
  .pipe(gulp.dest(folders.dest+'/css'));
});

gulp.task('minifyStyles', ['compileSass'], function() {
  return gulp.src(folders.dest+'/css/style.css')
  .pipe(maps.init({
    loadMaps: true /* `init` again, load prior from sass */
  }))
  .pipe(minCss({
    sourceMap: true
  }))
  .pipe(maps.write('./'))
  .pipe(rename('style.min.css'))
  .pipe(gulp.dest(folders.dest+'/css'));
});

关于javascript - 将 gulp-sourcemaps 与 gulp-csso 和 gulp-sass 结合起来,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46835331/

相关文章:

Javascript 表单提交验证不起作用

node.js - CRON + Nodejs + 多核 => 行为?

node.js - gulp 任务根据文件名动态创建文件夹

gulp - 如何将 vue.js 与 gulp 一起使用?

css - Gulp sass 编译复制 scss 文件

javascript - 在opencart 1.5.5.1中不使用图像管理器上传图像

javascript - 是否可以将副本放入预定义的文件夹而不是根文件夹中

Javascript:词法和执行范围

javascript - 如何在 vanilla javascript 或基于 Node 的 javascript 项目中导入 crypto.js

node.js - Node Js 服务器使用哪个 Amazon Web 服务?