用途:在 React 应用中以 Zustand 构建类型安全的全局状态,减少样板代码,通过细粒度订阅避免不必要重渲染。依赖 React 18+、TypeScript 5+,示例版本 zustand@5.0.8。
主要能力:最小 API(仅 create);无需 Provider、reducer 或 action;TypeScript 类型推断友好;支持 persist 持久化(localStorage/sessionStorage)、devtools(Redux DevTools)、immer、slices 分片模式、异步 action、派生值、重置 store 与 Next.js SSR 水合处理。安装:npm install zustand,或 pnpm add zustand / yarn add zustand。
使用方式:TypeScript 下必须用 create<T>()()(双括号)以兼容中间件;状态与 action 分别定义接口;用选择器抽取状态;多值选择用 shallow;persist 使用唯一存储名;Next.js 用 _hasHydrated 标志处理水合。技能内置 8 个模板(basic-store.ts、typescript-store.ts、persist-store.ts、slices-pattern.ts、devtools-store.ts、nextjs-store.ts、computed-store.ts、async-actions-store.ts)、参考文档(middleware-guide.md、typescript-patterns.md、nextjs-hydration.md、migration-guide.md)及检查脚本 check-versions.sh。
适用场景:React 中小型应用、需要持久化偏好或主题、需要 DevTools 调试、大型 store 分片组织、从 Redux/Context API/Zustand v4 迁移。
限制:不要用于服务端状态,这类场景建议用 TanStack Query;避免直接改状态、在选择器中新建对象、多个 store 共用存储名;SSR 下访问 localStorage 需先做水合判断;避免导出 store 实例,只导出 hook。具体价格与更多平台信息暂未提供。