错误:EMFILE,Gulp.watch打开的文件太多

cod*_*sed 5 gulp gulp-watch browser-sync

我的gulpfile.js看起来像这样:

gulp.task('default', ['build', 'browser-sync'], function () {
    gulp.watch("**/*.css", ['bs-reload']);
    gulp.watch(["**/*.js", "!**/*/node_modules/**/*.*"], ['bs-reload']);
    gulp.watch("**/*.html", ['bs-reload']);
});
Run Code Online (Sandbox Code Playgroud)

即使我已经排除了node_modules,它也试图向所有node_modules添加一个监视.

怎么能排除它?

请注意,node_modules在项目的根目录中不存在,感染它位于项目的根目录之上,为什么它甚至包括相同的麻烦呢?

Error: EMFILE, too many open files '/Users/**/Documents/gits/tm/node_modules/browser-sync/lib/public/socket.io.js'
    at Object.fs.openSync (fs.js:438:18)
    at Object.fs.readFileSync (fs.js:289:15)
    at Object.utils.getSocketScript (/Users/**/Documents/gits/tm/node_modules/browser-sync/lib/snippet.js:109:19)
Run Code Online (Sandbox Code Playgroud)

Bre*_*tin 6

尝试将其作为更具弹性的替代品来代替fs:

优美-FS

fs像这样的全球补丁:

var realFs = require('fs')
var gracefulFs = require('graceful-fs')
gracefulFs.gracefulify(realFs)
Run Code Online (Sandbox Code Playgroud)