码迷,mamicode.com
首页 > 其他好文 > 详细

npm-install once

时间:2017-03-23 18:23:13      阅读:110      评论:0      收藏:0      [点我收藏+]

标签:多次   结束   ada   stream   event   bsp   style   http   cti   

Once 是我最习惯的模块,它展示了几乎所有的我书写的通过issac Schlueter创建的应用。

原理很简单,Once使用各类一个函数且返回了一个函数,你可以调用这个函数,但是只能调用一次。如果你想调用多次,子函数的调用将不会受理。

var once = require(‘once’)

function myAPI (cb) {
  cb = once(cb)
  // my code
}

下面防止你错误毁掉两次,且允许你更加安全的将回调处理函数直接附加到事件触发器(event emitter)上面且在合适的地方stream

function (cb) {
  cb = once(cb)
  var stream = createReadableStream()
  stream.on(‘data’, { /* do stuff with data */ })
  stream.on(‘end’, cb)
  stream.on(‘error’, cb)
}

根据说明,一个可以阅读的stream应该只是结束或者发生错误一次,实际上很多的strema没有为此检车属性,这导致了错误可能在彻底结束之后发生,或者在错误之后回调结束。

上面的函数保证了你不会发生这些bug。

 

原文:https://blog.xervo.io/npm-install-once

npm-install once

标签:多次   结束   ada   stream   event   bsp   style   http   cti   

原文地址:http://www.cnblogs.com/RachelChen/p/6606437.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!