用于配置异步限速函数的选项
• TFn extends AnyAsyncFunction
optional enabled: boolean | (rateLimiter) => boolean;
optional enabled: boolean | (rateLimiter) => boolean;
限速器是否启用。禁用时,`maybeExecute` 不会触发任何执行。可以是布尔值或返回布尔值的函数。默认为 `true`。
optional initialState: Partial<AsyncRateLimiterState<TFn>>;
optional initialState: Partial<AsyncRateLimiterState<TFn>>;
限速器的初始状态
optional key: string;
optional key: string;
可选的键,用于标识此异步限速器实例。如果提供,该异步限速器将在开发者工具和 PacerProvider(如果适用)中通过此键进行标识。
limit: number | (rateLimiter) => number;
limit: number | (rateLimiter) => number;
在时间窗口内允许的最大执行次数。可以是数字或返回数字的函数。
optional onError: (error, args, rateLimiter) => void;
optional onError: (error, args, rateLimiter) => void;
当限速函数抛出错误时,可选的错误处理器。如果提供,该处理器将被调用,参数包括错误和限速器实例。这可以与 `throwOnError` 一起使用 - 在抛出任何错误之前,都会调用该处理器。
unknown
Parameters<TFn>
AsyncRateLimiter<TFn>
void
optional onReject: (args, rateLimiter) => void;
optional onReject: (args, rateLimiter) => void;
定义于: async-rate-limiter.ts:103
当由于限速而被拒绝执行时,可选的调用函数
Parameters<TFn>
AsyncRateLimiter<TFn>
void
optional onSettled: (args, rateLimiter) => void;
optional onSettled: (args, rateLimiter) => void;
定义于: async-rate-limiter.ts:107
当限速函数被执行时,可选的调用函数
Parameters<TFn>
AsyncRateLimiter<TFn>
void
optional onSuccess: (result, args, rateLimiter) => void;
optional onSuccess: (result, args, rateLimiter) => void;
定义于: async-rate-limiter.ts:114
当限速函数被执行时,可选的调用函数
ReturnType<TFn>
Parameters<TFn>
AsyncRateLimiter<TFn>
void
optional throwOnError: boolean;
optional throwOnError: boolean;
定义于: async-rate-limiter.ts:124
发生错误时是否抛出。如果未提供 onError 处理程序,则默认为 true;如果提供了 onError 处理程序,则默认为 false。可以显式设置以覆盖这些默认值。
window: number | (rateLimiter) => number;
window: number | (rateLimiter) => number;
定义于: async-rate-limiter.ts:129
应用限制的时间窗口(毫秒)。可以是数字或返回数字的函数。
optional windowType: "fixed" | "sliding";
optional windowType: "fixed" | "sliding";
定义于: async-rate-limiter.ts:136
用于限速的窗口类型
您的每周 JavaScript 资讯。每周一免费发送给超过 10 万开发者。