当我运行 gulp js 并对 JS 文件进行更改时,它会在被调用时进入无限循环
为什么从 gulp.watch 调用 build 永远不会返回?
var gulp = require("gulp");
var browserify = require("browserify");
var reactify = require("reactify");
var source = require("vinyl-source-stream");
var watch = require("gulp-watch");
function _bundle(config){
return browserify({
entries: ['./main.js'],
transform: [reactify]
}).bundle();
}
gulp.task('default',function(){
"use strict";
_bundle()
.pipe(source('build.js'))
.pipe(gulp.dest('./'));
});
gulp.task('build',function(){
"use strict";
_bundle()
.pipe(source('build.js'))
.pipe(gulp.dest('./'));
});
gulp.task('js', function() {
//gulp.watch(['./*.js'], ['default']);
gulp.watch(['./*.js'],['build'])
});
Run Code Online (Sandbox Code Playgroud)
//
您watch在所有 .js 文件 ( *.js)上指定,并build在其中任何一个更改时触发。构建依次调用_bundle,这是会导致修改,main.js
因为main.js比赛*.js的watch,build将再次被触发,现在你有一个周期,确保无限循环。
| 归档时间: |
|
| 查看次数: |
2297 次 |
| 最近记录: |