用途:Zustand 用于管理应用(主要是 React)的客户端状态,提供全局 store、选择器、动作与中间件能力,适用于需要轻量、可扩展状态管理的场景。安装:npm install zustand。
主要能力:通过 create 创建 store,可传入 set、get;用选择器按需订阅状态,如 useBearStore((state) => state.bears),避免无关重渲染;动作在 store 内定义,支持同步与异步操作。支持浅比较(shallow / useShallow)选择多个值,支持订阅变更、在 React 外读取与更新状态(getState、setState、subscribe)、重置 store。
中间件:persist 可持久化到 localStorage 或 AsyncStorage,支持 partialize 选择持久化字段与 onRehydrateStorage;devtools 支持调试与动作命名;immer 支持可变写法更新状态;中间件可组合使用。模式方面支持 slices 分片、计算值、Next.js SSR 的 Context 封装与 hydration 处理。
限制与注意:资料中未提供收费、价格、平台、效果等事实,暂未提供。文档给出常见错误与最佳实践:应使用具体选择器而非整个状态,对象选择需浅比较,避免直接修改状态,动作应定义在 create 内,建议为 store 定义 TypeScript 类型。参考文件包括 references/patterns.md、references/middleware.md、references/testing.md。