Skip to content

状态 API

StateManager 提供轻量的键值状态存储、订阅与持久化能力。

StateManager

  • set(key, value, options?) 设置状态并通知订阅者
  • get(key, defaultValue?) 读取状态
  • subscribe(key, listener) 订阅指定键的变化,返回取消订阅函数
  • getStateManager() 获取全局状态管理器单例

持久化选项:

ts
type StateOptions = {
  persist?: boolean
  key?: string
  storage?: 'local' | 'session' | 'url'
}

示例:

ts
import { getStateManager } from 'egenerui'
const state = getStateManager()

state.set('theme', 'dark', { persist: true, storage: 'local' })

const unsubs = state.subscribe('theme', (v) => {
  console.log('主题切换为:', v)
})

// 取消订阅
unsubs()

基于 MIT 许可发布