gulp常用插件之pump使用
更多gulp常用插件使用请访问:gulp常用插件汇总
pump这是一款小型节点模块,可将流连接在一起并在其中一个关闭时将其全部销毁。
使用标准source.pipe(dest)源时,如果dest发出关闭或错误,则不会破坏源。您也无法提供回调以告知管道何时完成。帮你做这两件事
更多使用文档请点击访问pump工具官网。
为什么我们使用pump
当使用Node.js流中的管道时,错误不会通过管道流传播,如果目标流关闭,则源流不会关闭。 泵模块将这些问题规范化,并在回调中传递错误。
其实说白了就是pump可以使我们更容易找到代码出错位置.
当我们使用pipe出错时可能会提示

而使用了pump会提示

安装
一键安装不多解释
npm install --save-dev pump
使用
只需将要管道传递的流传递到泵并添加可选的回调
var pump = require('pump')
var fs = require('fs')
var source = fs.createReadStream('/dev/random')
var dest = fs.createWriteStream('/dev/null')
pump(source, dest, function(err) {
  console.log('pipe finished', err)
})
setTimeout(function() {
  dest.destroy() //当dest为闭式泵会破坏源
}, 1000)
您还可以使用泵将两个以上的流也管道在一起
var transform = someTransformStream()
pump(source, transform, anotherTransform, dest, function(err) {
  console.log('pipe finished', err)
})
如果source,transform,anotherTransform或dest关闭所有的人都将被销毁。
与相似stream.pipe(),pump()返回传入的最后一个流,因此您可以执行以下操作:
return pump(s1, s2) // returns s2
请注意,pump将错误处理程序附加到流上以进行内部错误处理,因此,如果s2在上述情况下发出错误,则proccess.on('uncaughtException')如果您不侦听它,将不会触发a 。
如果要将组合了 s1和s2 的流返回到单个流,请使用 Pumpify代替。
gulp常用插件之pump使用的更多相关文章
- gulp常用插件之gulp-uglify使用
		更多gulp常用插件使用请访问:gulp常用插件汇总 gulp-uglify这是一款使用UglifyJS缩小js文件. 更多使用文档请点击访问gulp-uglify工具官网. 安装 一键安装不多解释 ... 
- 精通gulp常用插件
		本文主要展示的是gulp常用插件的使用方法和用途,通过对插件的熟练运用达到精通gulp.不定期更新.可以到github上面下载DEMO. github地址:lin-xin/gulp-plugins 匹 ... 
- node和gulp实现前端工程自动化(附:gulp常用插件)
		/** * 1. LESS编译 压缩 合并 * 2. JS合并 压缩 混淆 * 3. img复制 * 4. html压缩 */ // 在gulpfile中先载入gulp包,因为这个包提供了一些APIv ... 
- gulp常用插件之gulp-eslint使用
		更多gulp常用插件使用请访问:gulp常用插件汇总 ** gulp-eslint**这是一个用于识别和报告在ECMAScript/JavaScript代码中找到的模式的Gulp插件.. 更多使用文档 ... 
- gulp常用插件之gulp-babel使用
		更多gulp常用插件使用请访问:gulp常用插件汇总 gulp-babel这是Babel的Gulp插件. 此自述文件适用于gulp-babel v8 + Babel v7检查7.x分支以了解使用Bab ... 
- gulp常用插件之gulp-postcss使用
		更多gulp常用插件使用请访问:gulp常用插件汇总 ** gulp-postcss**这是一款通过多个插件通过管道传递CSS,但是仅解析一次CSS. 更多使用文档请点击访问gulp-postcss工 ... 
- gulp常用插件之cssnano使用
		更多gulp常用插件使用请访问:gulp常用插件汇总 cssnano这是一款将你的 CSS 文件做 多方面的的优化,以确保最终生成的文件 对生产环境来说体积是最小的插件. 更多使用文档请点击访问cha ... 
- gulp常用插件之gulp-notify使用
		更多gulp常用插件使用请访问:gulp常用插件汇总 gulp-notify这是一款gulp通知插件. 更多使用文档请点击访问gulp-notify工具官网. 安装 一键安装不多解释 npm inst ... 
- gulp常用插件之gulp-beautify使用
		更多gulp常用插件使用请访问:gulp常用插件汇总 gulp-beautify这是一款使用js-beautify进行资产美化插件. 更多使用文档请点击访问gulp-beautify工具官网. 安装 ... 
随机推荐
- js算法题
			//较Low,看到的大神 帮补充 1.给定一个数组:,定义一个函数获取数组中所有的奇数,返回一个新数组:var arr1=[1,3,4,5,6,7,8,3,4,2,3,6]; function ... 
- Go语言实现:【剑指offer】二叉树的镜像
			该题目来源于牛客网<剑指offer>专题. 操作给定的二叉树,将其变换为源二叉树的镜像. 示例: 输入: 4 / 2 7 / \ / 1 3 6 9 输出: 4 / 7 2 / \ / 9 ... 
- Python socket 基础(Server) - Foundations of Python Socket
			Python socket 基础 Server - Foundations of Python Socket 通过 python socket 模块建立一个提供 TCP 链接服务的 server 可分 ... 
- 论文翻译:Speech Enhancement Based on the General Transfer Function GSC and Postfiltering
			论文地址:基于通用传递函数GSC和后置滤波的语音增强 博客作者:凌逆战 博客地址:https://www.cnblogs.com/LXP-Never/p/12232341.html 摘要 在语音增强应 ... 
- Webpack之(progressive web application) - PWA中的 Service Workers 是什么
			学习文档:https://webpack.docschina.org/guides/progressive-web-application/ 参考文档:https://developers.googl ... 
- 关于宏MACRO,我们需要知道的事
			一.先从最宏观的角度来了解宏,这里的宏观角度是指程序的运行流程: 1,提交代码后,SAS先把代码读取储存到堆栈中: 2,用文本扫描插件来扫描堆栈中的代码,从上到下,从左到右: 3,扫描到一个分号,则编 ... 
- Java集合那点事, 满满干货~
			说到Java集合,可以说是初学者必踩的坑了. 那么怎么才能学好Java集合呢?个人认为关键是要理清楚思路,从上而下,建立一套完整的思维体系,这样才能更好的去认识事物的本质. 先确立一下学习Java集合 ... 
- console控制台的用法
			参考链接:https://developer.mozilla.org/zh-CN/docs/Web/API/Console 1,console.log('a'); 2,console.dir(xx); ... 
- 关于软件 TELEGRAM(电报) 的说明
			PLUS是TELEGRAM(电报)的三方客户端. 而 电报 是一款即时通讯软件.功能全面,安全性好,但在国内无法直接访问. 相关安全性介绍请看这里:https://www.anquanke.com/p ... 
- android 华为、魅族手机无法打印 Log 日志的问题
			最近使用魅族真机测试 App 时,发现 LogCat 不显示项目工程中通过Log.d()和Log.v()打印的 debug 和 verbose 级别的日志,甚是奇怪,通过 debug 模式断点调试也没 ... 
