ドキュメントにあるように、どちらも非ストリーム プラグインをストリームに変換する処理を行っています。
私が理解しようとしているのは、.pipe()
何かでメソッドを使用できる場合、それはストリームではないということですか?
もしそうなら、ここで何を何に変換しますか?
ビニールソースストリームの例:
(から: https://www.npmjs.com/package/vinyl-buffer )
var browserify = require('browserify')
var source = require('vinyl-source-stream')
var buffer = require('vinyl-buffer')
var uglify = require('gulp-uglify')
var size = require('gulp-size')
var gulp = require('gulp')
gulp.task('build', function() {
var bundler = browserify('./index.js')
return bundler.pipe()
.pipe(source('index.js'))
.pipe(buffer()) // <---------------------- why?
.pipe(uglify())
.pipe(size())
.pipe(gulp.dest('dist/'))
})
gulp-streamify の例:
(から: https://www.npmjs.com/package/vinyl-source-stream )
var source = require('vinyl-source-stream')
var streamify = require('gulp-streamify')
var browserify = require('browserify')
var uglify = require('gulp-uglify')
var gulp = require('gulp')
gulp.task('browserify', function() {
var bundleStream = browserify('index.js').bundle()
bundleStream
.pipe(source('index.js'))
.pipe(streamify(uglify())) // <----------- why?
.pipe(gulp.dest('./bundle.js'))
})