1.0.0 • Published 5 years ago
pes-async-await-try-catch-loader v1.0.0
pes-async-await-try-catch-loader
一个自动给 async 函数注入 try/catch 的 webpack loader
在开发中经常会使用 async/await 异步编程,同时也会频繁的使用 try/catch 捕获异步中的错误,使得业务代码充斥这 try/catch 非常的冗余,使用这个 loader 可以只在打包后的代码自动注入 try/catch,使得业务代码非常简洁
async function func() {
let res = await new Promise(resolve => {
setTimeout(() => {
resolve('success')
}, 3000)
})
}
打包后自动注入 try/catch
async function func() {
try {
let res = await new Promise(resolve => {
setTimeout(() => {
resolve('success');
}, 3000);
});
} catch (e) {
//...
}
}
Install
npm i pes-async-await-try-catch-loader -D
yarn add pes-async-await-try-catch-loader -D
Usage
// webpack.config.js
module: {
rules: [
{
test: /\.js$/,
use:{
loader:'pes-async-await-try-catch-loader',
options:{
catchCode:`alert(e)`
}
}
}
]
}
// vue.config.js
configureWebpack: (config) => {
config.module.rules.push({
test: /\.js$/,
use: [{
loader: 'pes-async-await-try-catch-loader',
options: {
catchCode: 'console.log(e)'
}
}]
})
}
Options
Name | Type | Default | Description |
---|---|---|---|
identifier | {string} | "e" | catch 子句中的错误对象标识符 |
catchCode | {string} | "console.error(e)" | catch 子句中的代码片段 |
finallyCode | {string} | undefined | finally 子句中的代码片段 |