Need private packages and team management tools?Check out npm Teams »

error-to-json

1.1.0 • Public • Published

error-to-json Build Status

Returns a JSON representation of an error (handles nested errors and calls nested toJSONs)

Installation

npm i --save error-to-json

Usage

Example: toJSON

var errToJSON = require('error-to-json')
 
var model = {
  _json: {
    x: 1,
    y: 2
  }
  helper: function () {/*...*/},
  toJSON: function () {
    return this._json
  }
}
var err = new Error('boom')
err.data = {
  err: new TypeError('boom2'),
  model: model
}
var json = errorToJSON(err)
/*
{
  "name": "Error",
  "message": "boom",
  "stack": "Error: boom\n    ....",
  "data": {
    "err": { // nested error was also converted to json
      "name": "TypeError",
      "message": "boom2",
      "stack": "TypeError: boom2\n    ...."
    },
    "model": { // toJSON was called!
      "x": 1,
      "y": 2
    }
  }
}
 */
 

Example: Parse

var parseErr = require('error-to-json').parse
 
var err = parse({
  message: 'boom2',
  stack: 'Error: boom2\n  at ...\n  at...'
})
/*
  > err
  [ Error: boom2 ]
  > err.stack
  `Error: boom2
    at ...
    at ...`
*/
 
var err2 = parse({
  message: 'boom'
  // no stack
})
/*
  > err2
  [ Error: boom ]
  > err2.stack
  'Error: boom'
*/

License

MIT

Install

npm i error-to-json

DownloadsWeekly Downloads

4,144

Version

1.1.0

License

MIT

Last publish

Collaborators

  • avatar