我試圖連接gulp-browserify
和gulp-watch
來重建我的包,每次源文件更改。然而,gulp-browserify
需要編譯(例如,src/js/app.js
)的單一入口點,並獲取每個依賴自身:如何使用gulp-browserify觀看多個文件,但僅處理一個文件?
gulp.src('src/js/app.js')
.pipe(browserify())
.pipe(gulp.dest('dist'))
然而,gulp-watch
失敗對每一個變化重建,因爲只有入口點文件正在被監控。我其實需要的是觀看多個文件,然後只處理切入點文件的可能性(尋找replaceEverythingWithEntryPointFile
):
gulp.src("src/**/*.js")
.pipe(watch())
.pipe(replaceEverythingWithEntryPointFile()) // <- This is what I need
.pipe(browserify())
.pipe(gulp.dest("dist"));
因此問題是:我怎麼能點gulp-browserify
入口點文件,並觸發重建在任何源文件的變化?如果解決方案包含節流,會很好:啓動時,每個源文件都將被設置爲觀看,因此我們的入口點文件將被多次傳送到gulp-browserify
,因爲文件是多餘的,這是不必要的。
只要確保您返回該流! 'return gulp.src('src/js/app.js')...' – rhodesjason
哦,廢話,我怎麼錯過了。謝謝,更新! – OverZealous
使用更新版本的gulp-watch,您需要使用回撥。 (「glob-src/**/*。js」},函數(files,cb){gulp.start(「build-js」){gulp.task(「watch」,function 「,cb); }); });' – Tony