less - Gulp sourcemap with less/concat/autoprefixer/minifycss?

标签 less concat gulp source-maps autoprefixer

是否可以使用所有这些转换生成源映射?

gulp.task('styles', function() {
    return gulp.src(source.styles)
        .pipe(plumber())
        .pipe(gulpif(/\.less$/, plumber().pipe(less({
            strictMath: true,
            strictUnits: true,
        }))))
        .pipe(concat('bundle.css'))
        .pipe(prefixer(['last 2 versions', '> 1%', 'ie 9'], {cascade: false}))
        .pipe(minifyCss())
        .pipe(gulp.dest('public/css'));
});

使用的库:
  • gulp-less
  • gulp-if
  • gulp-concat
  • gulp-autoprefixer
  • gulp-minify-css

  • 我知道 less可以生成源映射,gulp-concat 我认为不支持它们,autoprefixer应该保留它们,并且 minify-css/clean-css似乎没有提到源 map 。我倒霉了吗?

    最佳答案

    今晚我遇到了同样的问题,我仍在努力寻找一个干净的解决方案。但是,我只是设法让一些东西工作,所以我想我会分享:

    注意:我没有使用 gulpif也不是 minify
    使用 gulp-sourcemapsgulp-less似乎没有源映射选项(至少目前是这样)。

    替换 gulp-concat来自 gulp-concat-sourcemap保留源映射。

    gulp-sourcemaps 目前不支持 Gulp-concat(参见 README)。
    在修复之前,这里有一个修补版本:https://github.com/floridoo/gulp-concat/tree/sourcemap_pipe2

    gulp.task('less', function () {
      gulp.src(sources.less)
        .pipe(sourcemaps.init())
        .pipe(less())
        .pipe(prefix({ map: true })) 
        .pipe(concat('build.css'))
        .pipe(sourcemaps.write()
        .pipe(gulp.dest(dirs.build + 'assets/css'));
    });
    

    关于less - Gulp sourcemap with less/concat/autoprefixer/minifycss?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24519170/

    相关文章:

    javascript - 使用 Gulp 检查文件中是否存在 token

    html - 自动将样式表插入 HTML

    css - 集成到 Symfony 2 中时,如何从 LESS 编译器中获得好的错误

    mysql - SQL 连接重复结果

    sql - 如何使用组concat获取“其他”重复值?

    rust - 如何在 `quote!` 宏中的变量之后立即连接 token ?

    angularjs - 为什么 gulp-filter 不能过滤掉我的 bower 包中的更少文件

    css - 变量名错误 "is undefined"即使导入了 "variables.less"

    css - CSS网格:语义的重要性

    javascript - 使用数据属性值作为 sass 变量中的值