参考

Core API 参考

create option、store method、类型、生命周期 helper 与隔离入口的精选参考。

create(createState, options?)

create() 接受单 store factory/object,或 slice factory map。

const store = create((set, get, store) => ({
  count: 0,
  increment() {
    set(() => {
      this.count += 1;
    });
  }
}));

Factory 参数:

  • set:不可变更新边界;
  • get:当前状态访问,或显式 computed 声明;
  • store:供高级集成使用的 core store shell。

Store options

Option用途
name?: string诊断与集成默认值使用的 store name
middlewares?: Middleware[]在状态 materialization 前按数组顺序应用的 enhancer
enablePatches?: boolean在本地启用 forward/inverse patch 生成
sliceMode?: 'auto' | 'single' | 'slices'显式解析输入 shape
transport?: Transport通过注入 transport 创建 shared-main authority
transportPolicy?: TransportPolicy限制 action、授权 request、映射公开 error

Client options 额外包含:

Option用途
worker?: Worker | SharedWorker通过 Worker instance 构建 client transport
clientTransport?: Transport注入 client-side transport
executeSyncTimeoutMs?: numberaction catch-up 回退 full sync 前的等待时间;默认 1500

coaction/local 刻意排除所有 transport-only option。

Store method 与字段

Member含义
nameStore name
sharefalse'main''client'
isSliceStore输入是否被 materialize 为 slices
getState()Public 数据、绑定方法与 computed getter
getPureState()仅数据表示
getInitialState()初始化阶段生成的状态
setState(next)合并 deep partial 或运行 draft updater;client 拒绝
subscribe(listener)订阅并返回 unsubscribe function
apply(state?, patches?)底层集成/transport 更新;client 拒绝
destroy()幂等清理订阅、集成与 transport

应用代码应优先使用具名 action,而不是 apply();后者是 transport、middleware 与 adapter 的底层 contract。

Computed 声明

const source = (set, get) => ({
  items: [] as Item[],
  total: get(
    (state) => [state.items] as const,
    (items) => items.reduce((sum, item) => sum + item.price, 0)
  )
});

无参数调用 get() 读取当前根状态。

生命周期 helper

onStoreReady(store, callback) 将工作延迟到状态与集成完整 materialize 之后。callback 可返回在 destroy() 时运行的 cleanup。

wrapStore(store) 提供给需要 callable store shape 的框架与集成作者。

Signal primitives

coaction/local 与兼容 surface re-export 高级 alien-signals primitive,包括 signalcomputedeffecteffectScope、batch helper 与 type guard。普通应用派生状态仍应使用 getter 或 get(deps, selector)

Adapter 入口

coaction/adapter 暴露 defineExternalStoreAdapter()(兼容别名 createBinder())、mutable-adapter snapshot helper、根替换 helper、schema error 与 patch path safety utility。它面向集成作者,不用于普通状态更新。

逐 symbol 生成的 TypeDoc 见仓库 API 目录

本页目录