框架
版本
防抖器 API 参考
节流器 API 参考
速率限制器 API 参考
队列 API 参考
批处理器 API 参考

速率限制器选项

接口: RateLimiterOptions<TFn>

定义于: rate-limiter.ts:47

用于配置限流函数的选项

类型参数

TFn extends AnyFunction

属性

enabled?

ts
optional enabled: boolean | (rateLimiter) => boolean;
optional enabled: boolean | (rateLimiter) => boolean;

定义于: rate-limiter.ts:52

限流器是否启用。禁用时,maybeExecute 不会触发任何执行。默认为 true。


initialState?

ts
optional initialState: Partial<RateLimiterState>;
optional initialState: Partial<RateLimiterState>;

定义于: rate-limiter.ts:56

限流器的初始状态


key?

ts
optional key: string;
optional key: string;

定义于: rate-limiter.ts:61

用于标识此限流器实例的可选键。如果提供,限流器将在开发者工具和 PacerProvider(如果适用)中以此键进行标识。


limit

ts
limit: number | (rateLimiter) => number;
limit: number | (rateLimiter) => number;

定义于: rate-limiter.ts:66

时间窗口内允许的最大执行次数。可以是数字或一个接收限流器实例并返回数字的回调函数。


onExecute()?

ts
optional onExecute: (args, rateLimiter) => void;
optional onExecute: (args, rateLimiter) => void;

定义于: rate-limiter.ts:70

函数执行后调用的回调函数

参数

参数

Parameters<TFn>

rateLimiter

RateLimiter<TFn>

Returns (返回)

void


onReject()?

ts
optional onReject: (rateLimiter) => void;
optional onReject: (rateLimiter) => void;

定义于: rate-limiter.ts:74

由于限流而被拒绝执行时调用的可选回调函数

参数

rateLimiter

RateLimiter<TFn>

Returns (返回)

void


window

ts
window: number | (rateLimiter) => number;
window: number | (rateLimiter) => number;

定义于: rate-limiter.ts:79

时间窗口(毫秒),在此窗口内应用限制。可以是数字或一个接收限流器实例并返回数字的回调函数。


windowType?

ts
optional windowType: "fixed" | "sliding";
optional windowType: "fixed" | "sliding";

定义于: rate-limiter.ts:86

用于限流的窗口类型

  • 'fixed': 使用一个在窗口期后重置的固定窗口
  • 'sliding': 使用一个允许执行随着旧执行过期而进行的滑动窗口。默认为 'fixed'
我们的合作伙伴
Code Rabbit
Unkey
订阅 Bytes

您的每周 JavaScript 资讯。每周一免费发送给超过 10 万开发者。

Bytes

无垃圾邮件。您可以随时取消订阅。

订阅 Bytes

您的每周 JavaScript 资讯。每周一免费发送给超过 10 万开发者。

Bytes

无垃圾邮件。您可以随时取消订阅。