@denis2601

Почему не срабатывает плагин gulp-changed?

Структура проекта такая:
dist
  - css
  - js
  - vendor
src
  - components
    - index
      - template
        - include_file_1.html
        - include_file_2.html

      - index.html
    - alerts
    - team
    - ...
  - js
  - scss

Сборка html файлов:
var gulp = require('gulp'),
    changed = require('gulp-changed'),
    fileInclude = require('gulp-file-include');

    gulp.task('html', function () {
      gulp.src('src/components/**/index.html')
        .pipe(changed('dist', {hasChanged: changed.compareSha1Digest}))
        .pipe(fileInclude())
        .pipe(gulp.dest('dist'))
    });

Дело в том что при сборки файлов, собираются все, а надо что бы собирался только тот что был изменен(1), и конечно пересобирались те файлы в которые входят инклюды(2). Почитал по форумам, и пишут что плагин gulp-changed умеет отслеживать такие файлы (2), и даже если бы только пересобирались это (1), так вообще ни какой реакции, компилит все подряд.
Что я делаю не так, подскажите?
  • Вопрос задан
  • 350 просмотров
Пригласить эксперта
Ответы на вопрос 1
delphinpro
@delphinpro Куратор тега Gulp.js
frontend developer
Используйте gulp-changed для бинарных файлов
и gulp-changed-in-place для текстовых

Ну и плагин нужно вставлять после сборки. Вы проверяете хеш еще не обработанного файла (без инклюдов), естественно он будет отличаться от обработанного.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы