Zustand 是一个轻量级的 React 状态管理库,基于 hooks 设计,提供了简洁的 API 来管理全局状态。
核心优势:
- 轻量级:体积小(约 1KB gzipped),无依赖
- 简洁 API:使用简单的 create 函数创建 store,无需繁琐的配置
- 无需 Provider:不需要在应用顶层包裹 Provider 组件
- 基于 hooks:完全兼容 React hooks,使用 useStore hook 访问状态
- 中间件支持:内置支持中间件,如 persist、devtools 等
- 选择性订阅:可以只订阅状态的特定部分,减少不必要的重渲染
- TypeScript 友好:内置 TypeScript 支持,提供良好的类型推断
相比 Redux,Zustand 减少了样板代码,无需 action types、reducers 等概念;相比 Context API,Zustand 提供了更好的性能优化和更简洁的 API。