我正在使用node.js.我有一个缓冲区,我需要将它写入一个名为' bla.js'然后管道g g了。类似的东西:
var uglify = require('gulp-uglify');
var buffer = ....
var wstream = fs.createWriteStream('bla.js');
wstream.write(buffer);
wstream.pipe(uglify());
这样做的正确方法是什么?
答案 0 :(得分:1)
据我所知,您应该能够多次在可读流上调用pipe()
并将内容发送到两个不同的可写流。
例如(干编码):
var fs = require('fs')
, uglify = require('gulp-uglify');
var rstream = fs.createReadStream('test.log');
rstream.pipe(fs.createWriteStream('bla.js'));
rstream.pipe(uglify());
答案 1 :(得分:1)
看起来插件vinyl-source-stream提供了您想要做的解决方案:
var source = require('vinyl-source-stream')
var streamify = require('gulp-streamify')
var browserify = require('browserify')
var fs = require('vinyl-fs');
var uglify = require('gulp-uglify');
var bundleStream = browserify('index.js').bundle()
bundleStream
.pipe(source('index.js'))
.pipe(streamify(uglify()))
.pipe(fs.dest('./bla.js'))