2014-10-15 2 views
2

У меня есть рабочий Глоток с простыми менее задачами следующим образом:Глотка Глоток меньше и глоток-sourcemaps дает неправильный sourceMappingURL

gulp.task('less', function() { 
    gulp.src(source_less) 
     .pipe(sourcemaps.init()) 
     .pipe(less({ 
      sourceMap: true 
     })) 
     .pipe(sourcemaps.write()) 
     .pipe(gulp.dest(dest_less)); 
}); 

Я хочу Глоток-sourcemaps модуля для отображения источника карты, как встроенные комментарии в моем файле CSS. Но всякий раз, когда gulp компилирует мой LESS, файлы gulp-sourcemaps не показывают путь к исходному файлу. Вместо этого он показывает что-то вроде этого:

/*#  sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2 
     VzIjpbIm1haW4ubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJLG1DQUFBIiwi 
     ZmlsZSI6Im1haW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsibmF2IHtcclxuICAgIGJhY2tncm91bmQtY29 
     sb3I6IHllbGxvdyAhaW1wb3J0YW50O1xyXG59Il0sInNvdXJjZVJvb3QiOiIvc291cmNlLyJ9 */ 

Я резко упрощенным мой gulpfile, удаление LiveReload, autoprefixer и такие. Но даже в этой урезанной версии я не могу получить правильный URL-адрес источника.

Этот предмет уже довольно долгое время, любая помощь была бы очень признательна!

ответ

2

У вас уже есть исходные карты. Если вы base64 расшифровать то, что приходит после того, как sourceMappingURL=data:application/json;base64, вы получите это:

{"version":3,"sources":["main.less"],"names":[],"mappings":"AAAA;EACI,mCAAA","file":"main.css","sourcesContent":["nav {\r\n background-color: yellow !important;\r\n}"],"sourceRoot":"/source/"} 

Попробуйте сами здесь: https://www.base64decode.org/

+0

Это также то, что я получаю, когда я использую особый файл для sourcemaps. Но как мне получить встроенную версию non-base64? Я просто хочу что-то выше моего инструктора CSS, например 'sourceMappingURL =/some/path/to/file.less', но не может заставить его работать. – Nicky

+2

SourceMappingURL - это путь к исходному файлу _not_. Это путь к * исходной карте * или самой исходной карте, если она встроена. Таким образом, встроенная исходная карта - именно то, что у вас есть сейчас. – Heikki

+0

http://blog.teamtreehouse.com/introduction-source-maps – Heikki

1

Для тех, кто наткнуться на этот пост и интересно, как получить отдельный файл для отображения это не в формате base64 - вы можете пройти путь относительно места назначения.

Например:

.pipe (sourcemaps.write ('./'))