node package manager

make-error-cause

Make Error Cause

NPM version NPM downloads Build status Test coverage

Make your own nested error types!

Features

  • Compatible with Node and browsers
  • Works with instanceof
  • Use error.stack and error.name
  • Output full cause with toString
  • Extends make-error

Installation

npm install make-error-cause --save

Usage

Usages from make-error. The only difference is that errors accept a second argument known as the error "cause". The cause is used to wrap original errors with more intuitive feedback - for instance, wrapping a raw database error in a HTTP error.

const CustomError = makeErrorCause('CustomError')
 
const cause = new Error('boom!')
const error = new CustomError('something bad', cause)
 
error.toString() //=> "CustomError: something bad\nCaused by: boom!" 
error.stack // Works! 
error.cause.stack // Handy! 

Attribution

Inspired by verror, and others, but created lighter and without core dependencies for browser usage.

License

Apache 2.0