参考
APIs
用于创建和配置 store 的核心函数。
create—— 通过 Hook 创建一个与 React 绑定的 store。createStore—— 创建一个不依赖 React 的独立 store。createWithEqualityFn—— 与create类似,但可以传入自定义的相等性函数。shallow—— 用于对对象和数组进行浅比较的工具函数。
Hook
用于读取和订阅 store 状态的 React Hook。
useStore—— 在 React 组件中访问并订阅一个原生 store。useStoreWithEqualityFn—— 与useStore类似,但可以传入自定义的相等性函数。useShallow—— 使用浅比较从选择器派生出引用稳定的结果。
中间件
可组合的中间件函数,用于扩展 store 的行为。
persist—— 使用localStorage或自定义存储引擎持久化状态并重新水合(rehydrate)。devtools—— 把 store 连接到 Redux DevTools,以便进行时间旅行调试。redux—— 使用类似 Redux 的 reducer 与 dispatch 模式。immer—— 借助 Immer 以可变的写法更新状态。combine—— 将各自独立的状态切片合并为一个类型可推断的 store。subscribeWithSelector—— 订阅 store 状态中的某一部分,并支持选择器与相等性函数。
集成
关于将 Zustand 与第三方库搭配使用的深入指南。
- 持久化 store 数据 —— 深入讲解
persist中间件与存储适配器的指南。 - Immer 中间件 —— 深入讲解
immer中间件的指南。 - 第三方库 —— 在生态系统中与其他库一起使用 Zustand。
迁移
大版本之间的升级指南。
旧版本
在旧版本 Zustand 中存在、但已不再推荐用于新代码的 API。
- createContext (v3) ——
zustand/context导出的createContext,在 v4 中已废弃,并在 v5 中移除。