Async Generator Function
异步生成器在 yield 之间可以 await,适合按块拉取远程数据、节流推送、模拟流式 API。
项目中的实现
- 源码:
src/asyncGeneratorFunction.ts - 导出:
streamChunks、collectAsyncGenerator
各函数示例
streamChunks
import { streamChunks } from 'wssf-kage-js';
for await (const x of streamChunks([1, 2, 3], 10)) {
console.log(x);
}
collectAsyncGenerator
import { streamChunks, collectAsyncGenerator } from 'wssf-kage-js';
await collectAsyncGenerator(streamChunks(['a', 'b'], 0)); // => ['a', 'b']
什么时候优先用
- 需要
for await...of消费异步序列 - 把分页或 WebSocket 消息整理成统一的异步可迭代接口