Neo's Personal Matrix

    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'
    })

    Keywords

    none

    Install

    npm i multicb

    DownloadsWeekly Downloads

    527

    Version

    1.2.2

    License

    none

    Last publish

    Collaborators

    • pfraze