@viso/shared-timer
v0.2.3
Published
一个轻量级、类型安全的计时器工具库,专为 TypeScript 项目设计。
Readme
@viso/shared-timer
一个轻量级、类型安全的计时器工具库,专为 TypeScript 项目设计。
安装
npm install @viso/shared-timer功能特点
- 🎯 类型安全: 完全基于 TypeScript 实现,提供完整的类型检查和智能提示
- ⏰ 计时器管理: 提供灵活的计时器创建和管理功能
- 🛌 同步睡眠: 支持同步和异步的睡眠功能
- 🔄 可控制: 支持启动、暂停、停止、重置等操作
- 🧪 经过测试: 完整的单元测试覆盖,确保稳定性和可靠性
- 🪶 轻量级: 基于 shared-types,无额外依赖
使用方法
基本计时器
import { Timer } from '@viso/shared-timer'
// 创建计时器
const timer = new Timer()
// 启动计时器
timer.start()
// 获取经过的时间(毫秒)
const elapsed = timer.getElapsed()
// 暂停计时器
timer.pause()
// 恢复计时器
timer.resume()
// 停止并重置计时器
timer.stop()带回调的计时器
import { Timer } from '@viso/shared-timer'
// 创建带回调的计时器
const timer = new Timer({
onTick: (elapsed) => {
console.log(`经过时间: ${elapsed}ms`)
},
interval: 1000 // 每秒触发一次
})
timer.start()同步睡眠
import { sleepSync } from '@viso/shared-timer'
console.log('开始')
sleepSync(2000) // 同步睡眠 2 秒
console.log('2秒后执行')异步睡眠
import { sleep } from '@viso/shared-timer'
async function example() {
console.log('开始')
await sleep(2000) // 异步睡眠 2 秒
console.log('2秒后执行')
}API 参考
Timer 类
构造函数
new Timer(options?: TimerOptions)选项
onTick?: (elapsed: number) => void: 计时回调函数interval?: number: 回调触发间隔(毫秒,默认 1000)
方法
start(): 启动计时器pause(): 暂停计时器resume(): 恢复计时器stop(): 停止并重置计时器reset(): 重置计时器getElapsed(): 获取经过的时间(毫秒)isRunning(): 检查计时器是否正在运行isPaused(): 检查计时器是否暂停
睡眠函数
sleepSync(ms: number): void
同步睡眠指定的毫秒数。
sleep(ms: number): Promise<void>
异步睡眠指定的毫秒数。