Skip to content

TypeWriter 流式打字机

class TypeWriter

用于模拟打字机效果的类,逐字符输出文本,支持文本追加、停止、完成回调和变化回调。

注意: TypeWriter 不是包具名导出,也不在包默认导出对象上,当前不能通过 import { TypeWriter } from '@mingto/tools' 使用。

参数

构造函数

typescript
const typewriter = new TypeWriter(speed)
参数名说明类型默认值
speed打字速度,单位毫秒,每 speed 毫秒打印一个字符number100

返回值

返回值说明类型
typewriter打字机实例TypeWriter

方法

方法说明类型
append(text)向打字队列追加文本(text: string) => void
stop()手动停止打字,重置状态() => void
onEnd(callback)监听打字完成事件(callback: (text?: string) => void) => void
onChange(callback)监听打字内容变化事件(callback: (text?: string) => void) => void

示例

基础用法

typescript
const typewriter = new TypeWriter(100)

typewriter.onChange((text) => {
  console.log('当前输入:', text)
})

typewriter.onEnd((text) => {
  console.log('输入完成:', text)
})

typewriter.append('你好,世界!')

追加文本

typescript
const typewriter = new TypeWriter(50)

typewriter.append('你好')
typewriter.append('世界')
// 输出:你好世界

手动停止

typescript
const typewriter = new TypeWriter(80)
typewriter.append('这是一段较长的文本内容')
typewriter.stop()

注意事项

  • 通过 new 关键字实例化。
  • stop() 会清空当前队列并重置状态,同时触发 onEnd 回调。
  • 当前 TypeWriter 未通过 @mingto/tools 包公共 API 导出,业务侧如需使用请在项目内维护等价实现或等待后续版本公开导出。