Javascript 将SCS的sourcemaps打包到单个文件中

Javascript 将SCS的sourcemaps打包到单个文件中,javascript,node.js,sass,gulp,gulp-sourcemaps,Javascript,Node.js,Sass,Gulp,Gulp Sourcemaps,上面的代码使用sourcemaps正确生成,但下面的代码不正确 sass scss/_bootstrap.scss style.css 有两个问题: 在Sass编译之后,您有多个更改,但是您直接在Sass任务之后编写sourcemaps。Autoprefixer和MinifyCSS会更改输出,因此原始源映射不再为真。将sourcemaps.write()调用放到管道底部 不幸的是,gulpminifycss有时在源地图上会出现问题。我建议使用Sass中的内置压缩过程(尽管通常不推荐) 此代码

上面的代码使用sourcemaps正确生成,但下面的代码不正确

sass scss/_bootstrap.scss style.css 
有两个问题:

  • 在Sass编译之后,您有多个更改,但是您直接在Sass任务之后编写sourcemaps。Autoprefixer和MinifyCSS会更改输出,因此原始源映射不再为真。将
    sourcemaps.write()调用放到管道底部

  • 不幸的是,
    gulpminifycss
    有时在源地图上会出现问题。我建议使用Sass中的内置压缩过程(尽管通常不推荐)

  • 此代码将在以下情况下工作:

    gulp.task('sass', function () {
        sass('scss/_bootstrap.scss', {sourcemap: true})
            .on('error', function (err) {
                console.error('Error!', err.message);
            })
            .pipe(sourcemaps.write())
            .pipe(debug())
            .pipe(autoprefixer())
            .pipe(gulpif(mode === 'prod', minifyCss()))
            .pipe(rename("style.css"))
            .pipe(gulp.dest(dest+'css/'));
    });
    

    有什么错误吗?你需要gulp sourcemap吗?
    gulp.task('sass', function () {
        return sass('bower_components/sass-bootstrap/lib/bootstrap.scss', {
                sourcemap: true,
                style: (mod === 'prod' ? 'compressed' : 'nested')
            })
            .on('error', function (err) {
                console.error('Error!', err.message);
            })
            .pipe(debug())
            .pipe(autoprefixer())
            .pipe(rename("style.css"))
            .pipe(sourcemaps.write())
            .pipe(gulp.dest('css/'));
    });