You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is useful for handling multiple asynchronous errors, where you want to catch all the errors and combine them to return just a single error.
Features
error instanceof Error === true
composable: error([error([err1, err2]), err3])
stack and message are combined in a nice way
array-like object, so you can access the original errors by looping over the error
If you just have one error, it looks exactly like raw error meaning, error(err).message === err.message && error(err).stack === err.stack
should work in the browser, though I haven't tested it yet
Installation
npm install combine-errors
Usage
varerror=require('combine-errors')varerr=error([newError('boom'),newError('kablam')])throwerr/*=>Error: boom at repl:2:1 at REPLServer.defaultEval (repl.js:262:27) at bound (domain.js:287:14) at REPLServer.runBound [as eval] (domain.js:300:12) at REPLServer.<anonymous> (repl.js:431:12) at emitOne (events.js:95:20) at REPLServer.emit (events.js:182:7) at REPLServer.Interface._onLine (readline.js:211:10) at REPLServer.Interface._line (readline.js:550:8) at REPLServer.Interface._ttyWrite (readline.js:827:14)Error: kablam at repl:3:1 at REPLServer.defaultEval (repl.js:262:27) at bound (domain.js:287:14) at REPLServer.runBound [as eval] (domain.js:300:12) at REPLServer.<anonymous> (repl.js:431:12) at emitOne (events.js:95:20) at REPLServer.emit (events.js:182:7) at REPLServer.Interface._onLine (readline.js:211:10) at REPLServer.Interface._line (readline.js:550:8) at REPLServer.Interface._ttyWrite (readline.js:827:14)*/