Доброго времени суток.
При обновлении своего gulpfile столкнулся с такой задачей:
1 таск собирает все scss файлы из папки в один, плагин `
gulp-concat`
const concatBlocks = () =>
src(`${paths.blocks}**/*.scss`)
.pipe(sourcemaps.init())
.pipe(concat('_blocks.scss'))
.pipe(sourcemaps.write())
.pipe(dest(`${paths.scss.src}helpers/`));
2 таск с помощью `gulp-sass` собирает css, импортируя в него подготовленный в первом таске файл средствами SCSS, генерируя при этом
sourcemap с помощью
gulp-sourcemapsconst buildCss = () =>
src(['*.scss', '!_*.scss', 'helpers/*.scss', '!helpers/_*.scss'], {cwd: paths.scss.src})
.pipe(sourcemaps.init({loadMaps: true}))
.pipe(scss().on('error', scss.logError))
.pipe(sourcemaps.write('./maps'))
.pipe(dest(`${paths.scss.built}`));
Естественно, при такой сборке в sourcemap все стили из `_blocks.scss`, собираемого в первом таске, принадлежат ему, а не первоначальным файлам. Хотелось бы видеть в sourcemap информацию именно об исходных файлах. В документации `gulp-sourcemaps` есть опция `loadMaps: true`, которая, как я понял, должна мне помочь: нужно сгенерировать карту в первом таске, а во втором подгрузить её, но это не сработало.
Возможно кто-то сталкивался с похожей проблемой?