Глоток-беззащитный не срабатывает на Windows
Я пытался решить эту проблему в течение нескольких дней. Я пытаюсь заставить gulp компилировать мои файлы less при сохранении их, но gulp-watch-less не запускается изменениями в файлах, которые я наблюдаю. Мой gulpfile.js это:
var gulp = require('gulp');
var watchLess = require('gulp-watch-less');
var less = require('gulp-less');
gulp.task('default', function () {
return gulp.src('less/style.less')
.pipe(watchLess('less/style.less'))
.pipe(less())
.pipe(gulp.dest('css'));
});
/*
gulp.task('watch', function() {
// Watch less files
gulp.watch('less/style.less', ['less']);
});
gulp.task('less', function() {
return gulp.src('src/scss/style.scss')
.pipe(less())
.pipe(gulp.dest('css'));
});
gulp.task('default', ['watch']);
*/
Когда я вначале запускаю gulp, он генерирует новый файл css, но после этого любые изменения, которые я делаю в style.less, не запускают обновление нового файла. Когда я делаю изменения, консоль показывает:
Меньше видел стиль.
Но новый файл не генерируется. Я пытался следовать решениям в Gulp, которые неожиданно перестали работать после npm update # 800. Я уже дважды переустанавливал nodejs, чтобы попытаться заставить его работать безуспешно.
1 ответ
Мне удалось решить это с помощью gulp-watch вместо gulp-watch-less. Мой новый gulpfile.js:
var gulp = require('gulp');
//var watchLess = require('gulp-watch-less');
var watch = require('gulp-watch');
var less = require('gulp-less');
/*
gulp.task('default', function () {
return gulp.src('less/style.less')
.pipe(watchLess('less/style.less'))
.pipe(less())
.pipe(gulp.dest('css'));
});
*/
gulp.task('watch', function() {
// Watch less files
watch('less/style.less', function() {
gulp.start('less');
});
});
gulp.task('less', function() {
return gulp.src('less/style.less')
.pipe(less())
.pipe(gulp.dest('css'));
});
gulp.task('default', ['watch']);
Кажется, есть проблема с использованием gulp-watch-less в Windows, которая не вызывает задачи при изменении файлов.