0.1.1 • Published 1 year ago

@liangskyli/axios-request v0.1.1

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

支持中间件配置的axios请求库

  • 基于@liangskyli/request 对axios请求库二次封装
  • 支持多端
    • http client
    • nodes

安装:

pnpm add @liangskyli/axios-request
# 安装 peerDependencies
pnpm add axios

使用

axiosCreateRequest函数

  • 对axios请求库的二次封装,默认没有配置中间件,可以自己灵活配置
  • 例子:
import { axiosCreateRequest } from '@liangskyli/axios-request';

const request = axiosCreateRequest<IRequestConfig, T>(initConfig);

// request middlewares
request.middlewares.request.use(loadingMiddleware({}));

axios中间件

1、序列化错误中间件

  • axiosSerializedErrorMiddleware 函数类型
    • 继承serializedErrorMiddleware中间件
<
  CodeKey extends string,
  MessageKey extends string,
>(
  option: AxiosSerializedErrorConfig<CodeKey, MessageKey>,
) => ReturnType<typeof serializedErrorMiddleware>
  • axiosSerializedErrorMiddleware 函数入参属性
属性说明类型默认值
option配置参数AxiosSerializedErrorConfig<CodeKey, MessageKey>

axiosRequest函数

  • 默认集成loadingMiddleware,showErrorMiddleware,serializedResponseMiddleware,axiosSerializedErrorMiddleware中间件
  • 支持自定义中间件的配置
  • 例子,具体使用可看测试用例的使用
import { axiosRequest } from '@liangskyli/axios-request';

const request = axiosRequest({
  loadingMiddlewareConfig: {
    showLoading: showLoadingFn,
    hideLoading: hideLoadingFn,
  },
  ShowErrorMiddlewareConfig: {
    showError: showErrorFn,
  },
});

// 使用
await request({ url: '/test' }).then((value)=>{
  console.log('result value:',value);
  // value返回格式
  /*{
    retCode: '0',
    data: { a: 1 },
    retMsg: undefined,
  }*/
});
0.1.1

1 year ago

0.1.0

1 year ago

0.1.0-beta.2

1 year ago

0.1.0-beta.1

1 year ago

0.1.0-beta.0

1 year ago