function useAsyncQueuer<TValue>(fn, options): AsyncQueuer<TValue>
function useAsyncQueuer<TValue>(fn, options): AsyncQueuer<TValue>
定义于:react-pacer/src/async-queuer/useAsyncQueuer.ts:51
一个较低级别的 React 钩子,用于创建一个 AsyncQueuer 实例来管理异步项目队列。
特性:
任务将并发处理,直至达到配置的并发限制。当一个任务完成时, 如果低于并发限制,则处理下一个待处理任务。
错误处理:
• TValue
(value) => Promise<any>
AsyncQueuerOptions<TValue> = {}
AsyncQueuer<TValue>
// 用于 API 请求的基本异步队列器
const asyncQueuer = useAsyncQueuer({
initialItems: [],
concurrency: 2,
maxSize: 100,
started: false,
onSuccess: (result) => {
console.log('项目已处理:', result);
},
onError: (error) => {
console.error('处理失败:', error);
}
});
// 将项目添加到队列
asyncQueuer.addItem(newItem);
// 开始处理
asyncQueuer.start();
// 用于 API 请求的基本异步队列器
const asyncQueuer = useAsyncQueuer({
initialItems: [],
concurrency: 2,
maxSize: 100,
started: false,
onSuccess: (result) => {
console.log('项目已处理:', result);
},
onError: (error) => {
console.error('处理失败:', error);
}
});
// 将项目添加到队列
asyncQueuer.addItem(newItem);
// 开始处理
asyncQueuer.start();