Gulp 观看记录问题

Gulp Watch Logging Issue

所以我设置了一个 glup watch 任务,它正在监视 windows 上 运行 的文件。一切正常,但它只会将一次记录到控制台。手表似乎只运行一次。如果我调用 cb() 那么它会循环运行。传入的文件数组是单个文件而不是文件夹。

var gulp = require('gulp'),
    watch = require('gulp-watch'),
    minCss = require('gulp-minify-css'),
    autoprefixer = require('gulp-autoprefixer'),
    concat = require('gulp-concat'),
    uglify = require('gulp-uglify'),
    pathConfig = require('./pathconfig.js'),
    config = require(pathConfig.config),
    fs = require('fs'),
    gutil = require('gulp-util'),
    buildCssImport = function (files) { 
        var file = '';
        config.cssFilesWPath.forEach(function(value) {
            if (value.charAt(0) != '!') {
                file = file + '\n' + '@import url(\'/' + value.replace(pathConfig.path, '')  + '\');';
            }
        });
        fs.writeFileSync(pathConfig.path  + config.cssDest + '/' + 'app.css', file);
    },
    buildJsImport = function () {
        fs.writeFileSync(pathConfig.path  + config.jsDest + '/' + 'app.js.json', JSON.stringify(config.jsFiles));
    };
gulp.task('build-css', function(cb) {
        buildCssImport(config.cssFilesWPath);
        gulp.src(config.cssFilesWPath)
            .pipe(concat('app.min.css'))
            .pipe(autoprefixer())
            .pipe(minCss())
            .pipe(gulp.dest(pathConfig.path + config.cssDest))
            .on("finish", function() {
                gutil.log('built css');
            });




});

gulp.task('build-js', function(cb) {
        buildJsImport();
        gulp.src(config.jsFilesWPath)
        .pipe(concat('app.js'))
        .pipe(gulp.dest(pathConfig.path + config.jsDest))
        .pipe(uglify())
        .pipe(concat('app.min.js'))
        .pipe(gulp.dest(pathConfig.path + config.jsDest))
        .on("finish", function() {
            gutil.log('built js');
        });


});

gulp.task('watch', function(cb) {
    var cssFilesWPath = [],
    jsFilesWPath = [];

    config.cssFiles.forEach(function (cssFile) {
        cssFilesWPath.push(pathConfig.path + cssFile);
    });
    config.jsFiles.forEach(function (jsFile) {
        jsFilesWPath.push(pathConfig.path + jsFile);
    });



    config.cssFilesWPath = cssFilesWPath;
    config.jsFilesWPath = jsFilesWPath;
    gulp.watch(cssFilesWPath, ['build-css']) 
    gulp.watch(jsFilesWPath, ['build-js'])
});

我遇到这个问题是因为它在已安装的 windows 网络位置上。 Gulp 第 4 版应该会修复此问题,但该错误仍然存​​在。 https://github.com/gulpjs/gulp/issues/1116