我最近发现gulp-watch这个组件,不知道是我哪里的问题,在linux,windows上表现不一样,为什么在windows10上,我修改一个文件,他会先删除刚修改的文件,再添加一次,而linux 则会只是修改文件。并且windows上经常报错,要不就是运行一会之后,就变得监听就变得卡卡的,修改一个网页都要半天。。。本人英语不好,不好直接去github上反应。。期望有大牛能说说么?
我的gulp脚本
gulp.task('static-sync:dev', ['static-sync'], function () {
util.log('[Sync] starting file watch');
return watch(config.static, function (obj) {
if (obj.event === 'change' || obj.event === 'add')
return gulp.src(obj.path, {base: './'})
.pipe(gulp.dest(config.dist))
.pipe(print(function () {
return '[Sync] file sync success: ' + obj.path.replace(obj.base, '');
}));
else if (obj.event === 'unlink') {
var distFilePath = obj.path.replace(__dirname, __dirname + '/' + config.dist);
return gulp.src(distFilePath)
.pipe(clean())
.pipe(print(function () {
return '[Sync] file remove success: ' + obj.path.replace(obj.base, '');
}));
}
});
});
windows上每一次修改都会进入 删除和修改两个监听,一共三次事件,而linux则为一次。。。很疑惑。。
这个问题是,webstorm的 安全读写问题,要关掉这个安全读写,不然编译容易出问题。