API 概览
UntilJS 提供简洁的基于 Promise 的 API 用于等待值的变化。
安装
bash
pnpm add untiljsbash
npm install untiljsbash
yarn add untiljs快速参考
函数
| 函数 | 描述 |
|---|---|
| until() | 创建 Until 实例的主函数 |
| createStore() | 创建可响应的 store |
类型
| 类型 | 描述 |
|---|---|
| WatchSource | 可监听的值类型 |
| Subscribable | 可订阅对象的接口 |
| UntilToMatchOptions | 等待方法的配置选项 |
方法
| 方法 | 描述 |
|---|---|
| toBe(value, options?) | 等待值等于目标值 |
| toMatch(condition, options?) | 等待条件返回 true |
| toBeTruthy(options?) | 等待值为真 |
| toBeNull(options?) | 等待值为 null |
| toBeUndefined(options?) | 等待值为 undefined |
| toBeNaN(options?) | 等待值为 NaN |
| changed(options?) | 等待值发生变化 |
| changedTimes(n, options?) | 等待值变化 n 次 |
| toContains(value, options?) | 等待数组包含值 |
| not.* | 任何方法的反向 |
基本用法
typescript
import until from 'untiljs'
// 基本用法
let value = 0
setTimeout(() => { value = 5 }, 1000)
await until(() => value).toBe(5)返回值
所有方法返回一个 Promise,解析为:
- 条件满足时的当前值
- 超时时的当前值(如果
throwOnTimeout为 false) - 超时时拒绝(如果
throwOnTimeout为 true)
typescript
const result = await until(() => value).toBe(5)
console.log(result) // 5