@art-site/art-core-ts-s-sync (中文(简体) )
TypeScript 的基本同步工具, 包括强壮的“ 承诺” 超时助手 .
为什么是这个模块?
它使常见的协同操作更加简洁,更清晰,更不易出错,同时为遗留的API提供现代的、基于承诺的替代品,如: setTimeout。这个模块帮助您用一个简单,类型安全的API来写更可读和可维护的ASync代码.
- 超时 : 创建一个在指定延迟后解决的保证, 在超时后可选择运行一个函数 .
- 超时 : 创建一个在特定时间(日期、时间戳或日期字符串)解决的许诺,在超时后可选择运行一个函数.
安装和使用示例( 需要)
用 npm 安装 :
npm install @art-suite/art-core-ts-async
基本用途:
import { timeout, timeoutAt } from "@art-suite/art-core-ts-async";
// Wait for 500ms
await timeout(500);
// Wait for 1 second, then run a function
await timeout(1000, () => console.log("done"));
// Wait until a specific time (e.g., 2 seconds from now)
await timeoutAt(Date.now() + 2000);
// Wait until a specific time, then run a function
await timeoutAt(new Date(Date.now() + 1000), () => "finished"); // resolves to "finished"
职能概览
timeout(ms: number, f?: () => unknown): Promise<unknown>
创建一个在指定数毫秒后解决的许诺。 可以选择的是,一个函数可以在超时后被调用. 如果是这样,承诺将随着职能的结果而解决.
timeout(1000)1秒后解决timeout(500, () => "done")+ 500ms后用价值解决"done"
timeoutAt(triggerAtTime: AllDateTypes, f?: () => unknown): Promise<unknown>
创建一个在特定时间解决的承诺。 时间可以是日期,数字(秒或毫秒),也可以是日期-时间字符串. 可以选择的是,一个函数可以在超时后被调用. 如果是这样,承诺将随着职能的结果而解决.
timeoutAt(Date.now() + 1000)1秒后解决timeoutAt(new Date(Date.now() + 500), () => 42)+ 500ms后用价值解决42
API 文档参考
关于所有被输出功能及其参数的详细信息,请参见源代码内的TypeScript打字和JSDoc评论.