0.0.3 • Published 2 years ago
@rasir/chain-promise-call v0.0.3
ChainPrmomiseCall
- 链式调用 promise 函数
- 这个工具的初衷是为了解决,在某些情况下,页面上不同组件发出的接口请求没有先后顺序,但是他们又不能一起发送到后端,必须一个执行完成后,另一个才能发送请求。
- 目前我们接口请求的基本都是遵循 Promise 的,所以,这个工具也就可以扩展成 Promise 函数链式调用了。
开始使用
npm i @rasir/chain-promise-call -S
使用方法
// 在tools.ts中
import ChainPromiseCall from "@ra/chain-promise-call";
export const chainPrmoiseCall = new ChainPromiseCall();
// 在A组件中
import {chainPrmoiseCall} form 'xx/tools.ts'
chainPrmoiseCall.push({
run: () => Promise<any>;
onSuccess?: (...args: any) => void;
onError?: (...args: any) => void;
})
// 监听chainPrmoiseCall中的函数是否已全部执行完成
chainPrmoiseCall.onStatusChange(callback);
// 取消监听chainPrmoiseCall的状态变化
chainPrmoiseCall.offStatusChange(callback);
// 在B组件中
import {chainPrmoiseCall} form 'xx/tools.ts'
chainPrmoiseCall.push({
run: () => Promise<any>;
onSuccess?: (...args: any) => void;
onError?: (...args: any) => void;
})