Javascript 使用node.js stream创建一个文件和要吞咽的管道
我正在使用node.js。我有一个缓冲区,我需要将其写入一个名为“bla.js”的文件,然后再将gulp的uglify管道中。比如:Javascript 使用node.js stream创建一个文件和要吞咽的管道,javascript,node.js,gulp,fs,Javascript,Node.js,Gulp,Fs,我正在使用node.js。我有一个缓冲区,我需要将其写入一个名为“bla.js”的文件,然后再将gulp的uglify管道中。比如: var uglify = require('gulp-uglify'); var buffer = .... var wstream = fs.createWriteStream('bla.js'); wstream.write(buffer); wstream.pipe(uglify()); 正确的方法是什么?据我所知,您应该能够多次调用可读流上的pipe(
var uglify = require('gulp-uglify');
var buffer = ....
var wstream = fs.createWriteStream('bla.js');
wstream.write(buffer);
wstream.pipe(uglify());
正确的方法是什么?据我所知,您应该能够多次调用可读流上的
pipe()
,并将内容发送到两个不同的可写流
Eg(干编码):
看起来插件源流为您提供了一个解决方案:
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'))
我没有可以读取的文件。我有一个从factor bundle(具有可写流的示例)接收的缓冲区:只要
rstream
是一个可读流,我认为它应该可以工作。如果您想提供帮助,您必须阅读,因为我正在尝试解决与他们的示例相关的问题。请尝试并获得“TypeError:Arguments to path.resolve必须是字符串”我正在尝试对factor bundle()的输出运行gulp-uglify,你能帮忙吗?伙计,我正在使用factor bundle,它是browserify的一个插件。我独自解决了布劳塞里菲的问题。我正试图修复这些因素的丑陋。我真的很感谢你的帮助。你难道看不到这个包在编写之前是如何通过管道吞下丑陋的东西的吗?也许可以直接查看乙烯基源流文档:我已经阅读乙烯基源流文档好几次了。这不是我想要的答案,相信我。您是否阅读了factor bundle的文档?
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'))