@edgefirst-dev/batcher

中文文档
1.0.1发布于 2025/02/05MITES Module近 30 天下载 3452

用于任何同步函数的更简单的批发器

中文使用文档

批发器

用于任何同步函数的更简单的批发器

安装

npm install @edgefirst-dev/batcher

使用量

import { Batcher } from "@edgefirst-dev/batcher";

// Configure the time window for the batcher
// The batcher will call the async function only once for the same key in this time window
let batcher = new Batcher<number, string>(10);

async function asyncFunction(): Promise<string> {
  await new Promise((resolve) => setTimeout(resolve, 1000));
  return { value: "ok" };
}

let [result1, result2] = await Promise.all([
  batcher.call(["my", "custom", "key"], asyncFunction),
  batcher.call(["my", "custom", "key"], asyncFunction),
]);

console.log(result1 === result2); // true

批发器将只为同一密钥调用一次ASync函数,并返回所有使用同一密钥的调用相同的承诺. 这样,如果函数返回一个对象,则所有调用都会通过可以参照比较的同一对象解决.

[TIP] 在 Remix 或 React Router 应用程序中使用此批量器用于在您的加载器中调用批量的async 函数, 这样您就可以为相同的数据避免多次查询或取取取.

版本与发布记录

@edgefirst-dev/batcher 共发布 5 个版本,首次发布于 2025/01/30;过去 12 个月发布了 0 个版本。

版本发布日期距今
1.0.1latest2025/02/051.8 年前
1.0.02025/01/301.8 年前
0.0.32025/01/301.8 年前
0.0.22025/01/301.8 年前
0.0.12025/01/301.8 年前

关于 @edgefirst-dev/batcher 的常见问题

@edgefirst-dev/batcher 是什么?

用于任何同步函数的更简单的批发器

如何安装 @edgefirst-dev/batcher?

在项目目录运行 npm install @edgefirst-dev/batcher,或使用 pnpm add / yarn add / bun add。

@edgefirst-dev/batcher 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/edgefirst-dev__batcher 是否存在。

@edgefirst-dev/batcher 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@edgefirst-dev/batcher 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=20.0.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@edgefirst-dev/batcher 可以商用吗?

@edgefirst-dev/batcher 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@edgefirst-dev/batcher 的下载量有多少?

根据 npm 官方下载统计,@edgefirst-dev/batcher 在 2026/10/13 – 2026/11/11 这 30 天内被下载 3,452 次,日均约 115 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@edgefirst-dev/batcher 还在维护吗?

最新版本 1.0.1 发布于 2025/02/05(1.8 年前);至今共发布 5 个版本,其中过去 12 个月发布了 0 个;首次发布于 2025/01/30。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。