Socket
Socket
Sign inDemoInstall

@etop/await-err-handle

Package Overview
Dependencies
0
Maintainers
8
Versions
6
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @etop/await-err-handle

异步请求错误处理


Version published
Maintainers
8
Created

Readme

Source

await-err-handle

功能

  1. 使用 to 包装的异步函数可以直接拿到 err 和 res,不必使用 try-catch
  2. 可以配置统一的错误处理函数,减少一些通用的逻辑的书写,例如业务中出错默认提示后端返回的错误信息或“系统错误”
  3. 通过配置 to 的第二个参数可以实现某个函数出错时显示特定的错误信息,允许配置该函数不走默认的错误处理逻辑

用法

  1. 安装
npm i -S @etop/await-err-handle
  1. main.ts 中注册统一的错误处理函数(可选,不注册即没有统一逻辑)
import to from '@etop/await-err-handle'

to.prototype.register((err: string | Resp<any>) => {
  // 内部逻辑自定义,表示统一的错误处理
  // ...
})

例如,将逻辑设置为:优先展示用户自定义的错误信息,没有的话展示后端返回的错误信息,兜底展示 “系统错误”,则写入如下逻辑代码:

import to from '@etop/await-err-handle'

to.prototype.register((err: string | Resp<any>) => {
  const msg = (typeof err === 'string' ? err : err.msg) || '系统错误'
  Message.error(msg)  // 需要导入 element
})
  1. 在需要使用的组件中导入,将异步方法放在 to 函数的参数里,errorMsg 参数根据业务需求自定义
import to from '@etop/await-err-handle'
// ...

// 出错时显示自定义错误信息(会覆盖 register 中设置的错误信息)
const [err1, res1] = await to(asyncFn1(param), '自定义错误信息')
// 出错时什么都不做(不走 register 中函数的逻辑),与不写 register 效果相同
const [err2, res2] = await to(asyncFn2(param), false)
// 出错时显示 register 中配置的默认提示信息
const [err3, res3] = await to(asyncFn3(param))

// ... 对请求结果或错误做处理

FAQs

Last updated on 02 Sep 2021

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc