исходные карты gulp указывают не на sass, а на css

У меня есть эта настройка gulp

require('es6-promise').polyfill();

var gulp = require('gulp');
var sass = require('gulp-sass');
var sourcemaps = require('gulp-sourcemaps');
var mmq = require('gulp-merge-media-queries');
var prefix = require('gulp-autoprefixer');

var sassOptions = {
    errLogToConsole: true,
    outputStyle: 'expanded'
};

var autoPrefixerOptions = {
    browsers: ['last 2 version', '> 1%', 'ie 9']
};

gulp.task('sass', function() {
    gulp.src('./scss/**/*.scss')
      .pipe(sourcemaps.init())
      .pipe(sass(sassOptions).on('error', sass.logError))
      .pipe(mmq())
      .pipe(prefix(autoPrefixerOptions))
      .pipe(sourcemaps.write('../maps', {includeContent: false, sourceRoot: '../../ui-dev/scss'}))

      .pipe(gulp.dest('../Content/v2.0'));
});

gulp.task('watch', function() {
    gulp.watch('./scss/**/*.scss', ['sass']);
});

gulp.task('default', ['sass', 'watch']);

моя структура выглядит следующим образом

|-Content
  |-maps
  |-v2.0
    |-- compiled css files here
|-dev
  |-gulpfile.js
  |-scss
    |-.scss files

все строится, как и ожидалось, за исключением того, что все мои файлы .map ссылаются на .css в каталоге Content/v2.0, а не на файлы .scss в папке dev.

Я понимаю, что исходное сопоставление должно указывать на номер строки в исходном файле (будучи scss) для упрощения отладки.

Как это исправить или я что-то упускаю?

ОБНОВИТЬ

Итак, я понял, что мне не хватает sourceRoute, но поскольку мой sass разбит на сотни файлов в каталогах на пару уровней в глубину, браузеры по-прежнему не подхватывают карты, потому что путь гласит: «../../ui-dev/ scss" на всех картах.

Как я могу получить правильный путь для каждого исходного файла?


person wind_kind    schedule 24.02.2016    source источник
comment
Итак, при дальнейшем поиске я нашел это: "> stackoverflow.com/questions/34090352/ - я думал, что это может быть моя проблема, но я уже использую gulp-sass версии 2.2.0. Также gulpfile очень похож на мой, и этот ответ был помечен как правильный. Любые другие идеи?   -  person wind_kind    schedule 24.02.2016
comment
Подробнее об этом. Я понял, что мне не хватает шага в настройке gulp, поэтому обновил его. Ставлю sourceRoot. Это оставляет меня с другой проблемой, которая нуждается в выяснении.   -  person wind_kind    schedule 25.02.2016


Ответы (1)


Я просто закончил компилировать каждую папку отдельно и определять путь к источнику, пока не найду лучший способ.

person wind_kind    schedule 25.02.2016