function useBatchedCallback<TFn>(fn, options): (...args) => void
function useBatchedCallback<TFn>(fn, options): (...args) => void
定义于: react-pacer/src/batcher/useBatchedCallback.ts:41
一个 React hook,用于创建一个回调函数的批量处理版本。此 hook 本质上是 `batch` 函数的一个封装,该函数从 `@tanstack/pacer` 导出,但针对 React 进行了优化,具有响应式选项和稳定的函数引用。
批量处理的函数将收集单个调用到批次中,并在满足批次条件时(达到最大大小、经过等待时间或自定义逻辑)执行它们。
与 `useBatcher` hook 相比,此 hook 提供了更简单的 API,使其成为基本批量处理需求的理想选择。但是,它不公开底层的 Batcher 实例。
对于需要以下功能的进阶用法
考虑改用 `useBatcher` hook。
• TFn extends AnyFunction
(items) => void
BatcherOptions<Parameters<TFn>[0]>
Function
...Parameters<TFn>
void
// Batch analytics events
const trackEvents = useBatchedCallback((events: AnalyticsEvent[]) => {
sendAnalytics(events);
}, {
maxSize: 5, // Process when 5 events collected
wait: 2000 // Or after 2 seconds
});
// Use in event handlers
<button onClick={() => trackEvents({ type: 'click', target: 'button' })}>
Click me
</button>
// Batch analytics events
const trackEvents = useBatchedCallback((events: AnalyticsEvent[]) => {
sendAnalytics(events);
}, {
maxSize: 5, // Process when 5 events collected
wait: 2000 // Or after 2 seconds
});
// Use in event handlers
<button onClick={() => trackEvents({ type: 'click', target: 'button' })}>
Click me
</button>
您的每周 JavaScript 资讯。每周一免费发送给超过 10 万开发者。