Gulp – 改进捆绑的js文件的gulp.watch的性能
当我对js
文件进行更改时,我遇到了浏览器livereloading的性能问题。 在我的咕噜设置,我有以下手表:
gulp.task('watch', function() { gulp.watch(config.paths.html, ['html']); gulp.watch(config.paths.js, ['js', 'lint']); gulp.watch(config.paths.css, ['css']); });
因此,每当js
文件发生变化时,就会触发js
和lint
任务。 他们如下:
gulp.task('js', function() { browserify(config.paths.mainJs) .transform(reactify) .bundle() .on('error', console.error.bind(console)) .pipe(source('bundle.js')) .pipe(gulp.dest(config.paths.dest + '/scripts')) .pipe(connect.reload()); }); gulp.task('lint', function() { return gulp.src(config.paths.js) .pipe(lint({config: 'eslint.config.json'})) .pipe(lint.format()); });
有了这个设置, js
文件更改的实时重新加载不会扩展。 随着项目越来越大,实时重新加载需要更长的时间。 即使是一个有大约十几个JS文件的小项目,每次重新载入也需要3.8秒。
我知道问题在于,在每个js
文件更改时,都会重新激活和捆绑项目中的每个js
文件,这是一项昂贵的操作,对于除了您更改的js
文件以外的所有js
文件都是完全冗余的。 什么是更好的方式来处理实时重新加载? 我知道webpack使用热模块重新加载,有没有这样的gulp
等值?
- XMLHttpRequest无法加载https://www.facebook.com/dialog/oauth?response_type=code&redirect_uri=
- socket.io不能在客户端工作(传输错误)