vinyl-source-stream
ビニルオブジェクトに読み取り可能なストリームを変換します。
vinyl-buffer
は、ストリーミングビニルをバッファビニルに変換します。
ビニルオブジェクトはstream or a bufferをラップでき、gulp.dest
は両方を受け入れます。しかし、いくつかのgulpプラグインはストリーミングビニールを受け入れません。あなたがグッと作業を開始したときに実際には、
ストリーミングサポートされていません
誤差はかなり一般的です。例えば、afaikの場合、ストリーミングビニールをサポートするnodejsミニファイアはありません。そのようなプラグインで現在のストリームを動作させるには、gulp-buffer
が必要です。 gulp.src
から生成
ビニルはバッファであるが、読みやすいストリーム(browserify.bundle()
が読めるストリームを返す)からvinyl-source-stream
で生成されたビニルは、そうvinyl-buffer
はuglifyのように、それをいくつかのプラグインを使用する必要があることでしょうではありません。
をと一緒に使用するには、実際にはvinyl-buffer
は必要ありません。これは本当にシンプルな一気タスクが正常に動作します:uglify()
はバッファを期待しているので
gulp.task('browser-ugly' , function(){
return bundler = browserify({
debug: true,
entries : './browserify-script.js'
})
.bundle()
.pipe(source('origin.js'))
.pipe(buffer()) //you cannot get rid of this.
.pipe(uglify())
.pipe(gulp.dest('./scripts/'));
});
:
gulp.task('browser' , function(){
return browserify({
debug: true,
entries : './browserify-script.js'
})
.bundle()
.pipe(source('browserify-script.js'))
// .pipe(buffer()) //you don't need this,
//since gulp-dest accepts both streams and buffers
.pipe(gulp.dest('./scripts/'));
});
をしかし、gulp-uglify
プラグインを使用するには、buffer
が必要になります。 .pipe(buffer())
行を削除すると、uglifyプラグインから「ストリーミングがサポートされていません」というエラーが発生します。
gulp.task('gulp-uglify' , function(){
gulp.src('simple.js')
.pipe(uglify()) //no need to buffer()
.pipe(gulp.dest('./scripts'));
});
:
gulp.src
は最初からバッファビニルを生成するので
しかし、あなたは通常、バッファー()ゴクゴクとする必要はありません