babel-plugin-try-catch-error-report
Babel plugin helps report the error in the try catch statement. You could report error to Sentry , Bugsnag or any other error monitor platform globally without changing source code.
Usage
npm install babel-plugin-try-catch-error-report -D
or
yarn add babel-plugin-try-catch-error-report -D
Via .babelrc.js
or babel.config.js
or babel-loader.
"plugins": "babel-plugin-try-catch-error-report" options
options
options
need to be an object.
expression
The option add expression into the top of catch statement. Expression
is set as an array of string.
plugins: 'babel-plugin-try-catch-error-report' expression: 'Vue.prototype.$sentry.log' ;
exclude
The option determines that the plugin doesn't take effect in the excluded file. Exclude
is set as an array of string.
Default: ['node_modules']
plugins: 'babel-plugin-try-catch-error-report' exclude: 'node_modules' ;
include
The option determines that the plugin takes effect in the included file. Include
is set as an array of string.
Default: []
plugins: 'babel-plugin-try-catch-error-report' include: 'src/view' ;
needFilename
The option provides control over if add filename into the expression's argument.
Default: true
plugins: 'babel-plugin-try-catch-error-report' needFilename: true ;
needLineNo
The option provides control over if add the code line of the of the try catch statement start.
Default: true
plugins: 'babel-plugin-try-catch-error-report' needLineNo: true ;
needColumnNo
The option provides control over if add the code column of the of the try catch statement start.
Default: false
plugins: 'babel-plugin-try-catch-error-report' needColumnNo: true ;
needContext
The option provides control over if add the invocation context of the try catch statement.
Default: true
plugins: 'babel-plugin-try-catch-error-report' needContext: true ;
windowProperty
The option provides control over add properties of window object into the expression's argument.
Default: []
plugins: 'babel-plugin-try-catch-error-report' windowProperty: 'window.location.href' 'perfomance.timing' 'navigator.userAgent' ;
Example
From
{ try const userId = 'sds83434'; ; catch console; } { try imagesrc = URL; catch e throw Errore; }
To
{ try const userId = 'sds83434'; ; catch error Vueprototype$sentry; console; } { try imagesrc = URL; catch e Vueprototype$sentry; throw Errore; }