multicb

1.2.2 • Public • Published

MultiCB

Simple way to aggregate multiple node-style callbacks

var multicb = require('multicb')
 
// default usage
 
var done = multicb()
doAsync(done())
doAsync(done())
doAsync(done())
done(function(err, results) {
  console.log(err) // => undefined
  console.log(results) /* =>
  [
    [undefined, 'foo'],
    [undefined, 'bar'],
    [undefined, 'baz']
  ]
  */
})
 
// pluck argument
 
var done = multicb({ pluck: 1 })
doAsync(done())
doAsync(done())
doAsync(done())
done(function(err, results) {
  console.log(err) // => undefined
  console.log(results) /* =>
  [
    'foo',
    'bar',
    'baz'
  ]
  */
})
 
// spread argument
 
var done = multicb({ pluck: 1, spread: true })
doAsync(done())
doAsync(done())
doAsync(done())
done(function(err, a, b, c) {
  console.log(err) // => undefined
  console.log(a) // => 'foo'
  console.log(b) // => 'bar'
  console.log(c) // => 'baz'
})

Readme

Keywords

none

Package Sidebar

Install

npm i multicb

Weekly Downloads

125

Version

1.2.2

License

none

Last publish

Collaborators

  • pfraze