Gulp watch()不会触发较少的过程

时间:2016-01-26 14:45:26

标签: javascript gulp gulp-watch

当我更改项目中的任何LESS文件时,未触发以下gulp watch任务。谁能发现我做错了什么?这里的大多数答案都说不要使用无表模块,我不是。它应该监听项目中任何LESS文件的更改,当一个更改时,转到app.less文件重新生成CSS文件(app.less对所有文件都包含@includes)。

var watch = require("gulp-watch");
var less = require("gulp-less");

gulp.watch(paths.source + "**/*.less", function(event){
        gulp.src(paths.source + paths.assets + paths.less + "app.less")
            .pipe(less().on("error", console.log))
            .pipe(gulp.dest(paths.dev + paths.css));
    });

1 个答案:

答案 0 :(得分:1)

以下是一些问题:

  1. require("gulp-watch");在这里毫无用处。实际上gulp.watch是gulp的核心API。

  2. gulpfile.js由几个gulp任务组成。

  3. 在您的终端中运行gulp watch

  4. 例如:

    var gulp = require('gulp');
    var path = require('path');
    var less = require('gulp-less');
    
    var paths = {
      // your paths
    };
    
    gulp.task('styles', function () {
      return gulp.src(paths.source + paths.assets + paths.less + "app.less")
        .pipe(less({
          // paths to be used for @import directives
          paths: [ path.join(__dirname, 'less', 'includes') ]
        }))
        .pipe(gulp.dest('./'));
    });
    
    gulp.task('watch', function() {
      gulp.watch('less/**/*.less', ['styles']);
    });