Задача часов Gulp 4 не обнаруживает изменений - PullRequest
2 голосов
/ 12 июня 2019

Я пытаюсь перейти на Gulp версии 4 с Gulp версии 3, и у меня постоянно возникают проблемы с задачей наблюдения, она не будет обнаруживать изменения при изменении отслеживаемого файла SCSS.Я сделал простой пример функции часов, так как ее легче отлаживать.

Ubuntu 17.10
Node v8.9.4
Npm 6.9.0
Gulp CLI version: 2.2.0
Gulp Local version: 4.0.2

Я попытался полностью удалить gulp и gulp-cli и установить его заново, удалить папку node_modules и создать файл package.json с нуля, но результат тот же.«Начало« смотреть »...» и ничего больше.

package.json

    {
      "name": "starter",
      "version": "1.0.0",
      "description": "",
      "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1"
      },
      "author": "",
      "license": "ISC",
      "devDependencies": {
        "gulp": "^4.0.2",
        "gulp-sass": "^4.0.2"
      }
    }

gulpfile.js

const {src, dest, watch} = require('gulp');
const sass= require('gulp-sass');

function style() {
    return src('./scss/**/*.scss')
        .pipe(sass())
        .pipe(dest('./css'));
}

function watchTask() {
    watch('./scss/**/*.scss', style);
}

exports.style = style;
exports.watch = watchTask;

Примечание. Задача стиля работает правильно иперемещение всех .scss файлов из источника в место назначения.

Я действительно ценю любую помощь, так как у меня заканчиваются идеи.

1 Ответ

1 голос
/ 12 июня 2019

Часы gulp обнаруживают изменения после загрузки, а не между этим и последним запуском gulp watch.

Вы должны указать gulp watch на выполнение первого задания стиля независимо от того,

function watchTask() {
  watch('./scss/**/*.scss', {ignoreInitial: false}, style);
}

Затем он будет повторно запускать задачу стиля всякий раз, когда вы снова прикасаетесь к файлу scss.

Обновление:

Используете ли вы файлы на докере или на сетевом диске? Возможно, вам потребуется включить {usePolling: true}, как указано в документации, «необходимый для успешного просмотра файлов по сети или в других нестандартных ситуациях».

...