Пытаюсь сократить время на компиляцию проекта. Структура папок такая:
/pug
/common
layout.pug
/components
blocks.pug
components.pug
elements.pug
index.pug
...
layout.pug инклудит
components.pug, который, в свою очередь, подключает
blocks.pug и
elements.pug с миксинами. Со временем страниц, блоков и элементов стало слишком много и на компиляцию начало уходить около минуты. Подключил gulp-cached и разделил компиляцию pug на два таска: один для страниц, другой для компонентов.
gulp.watch(['src/pug/*.pug'], compilePagesPug);
gulp.watch(['src/pug/common/*.pug', 'src/pug/components/*.pug'], compileAllPug);
Сейчас
compileAllPug тоже самое что и
compilePagesPug, только без кэша.
Со страницами всё ясно-понятно и работает отлично. А вот как быть с компонентами? Они не компилируются в html файлы и, если я правильно понимаю, галп видит что файл был изменен, запускает
compileAllPug, а внутри таска, gulp-cached думает что ничего не поменялось (что для него в принципе логично, наверное) и дальнейшие действия соответственно не срабатывают.
Или, может, я слишком намудрил со структурой и всё намного проще?