0.1.1 • Published 4 years ago
matias-axios-throttle v0.1.1
matias-axios-throttle
说明
该项目为基于axios的一个接口节流功能,当调用一个请求后,在该请求未返回时再次调用了相同接口,如果参数相同则将复用上一个请求的结果,但两个调用接口的回调都将收到请求的结果。一个常见的应用常见是,不同组件里面封装调用了相同接口,组件又在同一个页面中渲染。
安装与使用
- 安装matias-axios-throttle
pnpm导入$ pnpm add -D matias-axios-throttle
yarn导入$ yarn add -D matias-axios-throttle
npm导入$ npm install -D matias-axios-throttle
- 使用
- 仅需要用
requestThrottle替换掉最后发起请求的方法。
import {
requestThrottle,
abortAll,
abortRequestTasks,
keepRequestTasks,
getRequestUrls,
} from '../throttle/index'
/**
* 节流请求
* @param httpAxios axios实例,将用该实例发起请求
* @param options 请求配置,类型同axios
* @returns promise
*/
requestThrottle(httpAxios, requestConfig)
.then((response) => {
console.log('请求成功')
})
.catch((err) => {
console.log('请求失败')
})- 使用
requestThrottle发起请求 开放几个操作任务的方法:
abortAll取消全部请求getRequestUrls获取当前请求的所有地址abortRequestTasks取消指定的请求keepRequestTasks保留指定请求,其他全部移除
注意abortRequestTasks和keepRequestTasks的参数都是url
注意两次相同requestThrottle返回的的结果顺序和调用顺序是相反的。
版本
0.1.1
- 更新说明文档
0.1.0
- 实现基本功能