Неверный путь к исходной карте

Я использую пакеты gulp-less а также gulp-sourcemaps, Мой файл меньше находится под Styles/main.less, но сгенерированная карта источника указывает на source/main.less (где source/ похоже на префикс). Как это исправить, чтобы исходная карта правильно указывала на source/Styles/main.less?

Моя задача глотка довольно проста:

var gulp        = require('gulp'),
    less        = require('gulp-less'),
    gulpif      = require('gulp-if'),
    sourcemaps  = require('gulp-sourcemaps');

var paths = {
    styles: [
        'Styles/**/*.less',
        '!**/*.min.css'
    ],
    wwwRoot: 'wwwroot/'
}

var isLessFile = function(file) { return /.less$/.test(file.path); }

gulp.task('styles', function() {
    return gulp
        .src(paths.styles)
        .pipe(sourcemaps.init())
            .pipe(gulpif(isLessFile, less()))
        .pipe(sourcemaps.write('.'))
        .pipe(gulp.dest(paths.wwwRoot + 'styles'));
});

1 ответ

sourcemaps.write('.',{includeContent:false, sourceRoot:'../Styles'})

Должно работать на вас. По умолчанию вы включаете исходный контент в файл исходной карты и sourceRoot вероятно, '/source/', что означает использование встроенных исходных файлов. includeContent:false предотвратит встраивание источников в файл исходного кода, вы также должны установить sourceRoot Свойство относительного пути от того, где вы сохраняете исходную карту, где расположены ваши исходные файлы. В моем примере он будет искать одну папку для папки Styles, к ней будет добавлен префикс ко всем путям в ваших исходных картах sources массив.

Другие вопросы по тегам