包详细信息

babel-plugin-native-error-extend

niksy3.5kMIT2.1.1

Babel plugin for native Error extending.

babel, class, error, extend

自述文件

babel-plugin-native-error-extend

Build Status

Babel plugin for native Error extending.

Handles all ususal cases such as classic extend and constructor override.

Install

npm install babel-plugin-native-error-extend --save

Usage

Use it via available plugin activation options.

For .babelrc file:

{
    "plugins": ["babel-plugin-native-error-extend"]
}

Then, in your code:

/* Before */

class Becky extends Error {}

/* After */

class Becky extends Error {
    constructor(message, options) {
        super(message, options);
        this.name = this.constructor.name;
        this.message = message;

        if (typeof Error.captureStackTrace === 'function') {
            Error.captureStackTrace(this, this.constructor);
        } else {
            this.stack = new Error(message).stack;
        }
    }
}

Check test fixtures (actual and expected) for more examples.

Acknowledgments

License

MIT © Ivan Nikolić

更新日志

Changelog

[Unreleased][]

2.1.1 - 2023-08-22

Fixed

  • Handle rest argument (#4)

2.1.0 - 2023-07-03

Changed

  • Add support for second parameter (#3)

2.0.2 - 2020-12-08

Fixed

  • Handle passing custom message to super call

2.0.1 - 2020-11-19

Fixed

  • Ignore root classes (#2)

2.0.0 - 2020-11-06

Fixed

  • Handle default message being set (#1)

Changed

  • Upgrade package
  • Possibly breaking change: drop Node 8 support, Node >= 10 is now required

1.0.0 - 2020-08-12

Added

  • Initial implementation

[unreleased]: https://github.com/niksy/babel-plugin-native-error-extend/compare/v2.0.2...HEAD

[Unreleased]: https://github.com/niksy/babel-plugin-native-error-extend/compare/v2.1.1...HEAD

https://github.com/niksy/babel-plugin-native-error-extend/compare/v2.1.0...HEAD