状态管理
- 项目级别的响应状态共享能力,跨组件跨页面
Legend State
超快
超高性能
的大型 JS 状态管理器,本身不局限于框架,官方提供React
的集成,并使用技巧对 React 的组件做了极大的性能优化
,大大降低了React
开发者的心智负担,与其他框架的结合需要开发者自行摸索
Vanilla | React | Vue | 其他 |
---|---|---|---|
✔️ | ✔️ | ✔️ | ✔️ |
Pinia
以组合式API
为主的Vue
状态管理库,支持option式
的语法,极其轻量1KB
,使用 Vuex 的开发者是时候升级了~
Vue | Uniapp |
---|---|
✔️ | ✔️ |
Harlem
Vue3专属
不可变状态
突变更改
可预测审计
轻量全局摇树支持
无依赖
跟踪回溯重做快照
TS安全类型
支持Vue devtools
多实例不冲突
Vue3 | SSR |
---|---|
✔️ | ✔️ |
Vuex
Vue
官配的状态管理库,相信很多人爱不释手,但丝毫不影响推荐你使用新的替代品 Pinia
Vue | Uniapp |
---|---|
✔️ | ✔️ |
Redux
一个强大
历史悠久
的 JS 应用状态容器,提供完全可控可预测的状态管理模型,本身不受框架限制,有许多衍生品如 React-Redux
Redux-Toolkit
Redux-Thunk
等
Vanilla | React | Vue | 其他 |
---|---|---|---|
✔️ | ✔️ | ✔️ | ✔️ |
Mobx
一个简单
可扩展
的 JS 应用状态容器,提供基于 Proxy 的数据响应力,本身不受框架限制,有许多衍生品如 mobx-vue2
mobx-vue3
mobx-React
等
Vanilla | React | Vue | 其他 |
---|---|---|---|
✔️ | ✔️ | ✔️ | ✔️ |
Recoil
React
官方出品基于Context
特性的 hook 状态库,发展的不温不火,不过上项目还是没问题
React |
---|
✔️ |
Concent
腾讯大佬
开源的为React
量身定制的赋能库,本身不局限于状态管理这个点,而是将状态管理辐射到 React 全局,让组件也能享受状态的便利,同时提供了基于Proxy
的特殊编码 API 和方式。作者维护积极,问题反馈及时,是一款为数不多的良品
React |
---|
✔️ |
Hox
Umijs
开源的号称下一代React状态管理
的注重多个组件共享状态的库,本身完全基于 React 的 API 进行开发,学习成本很低,不妨试一试
React |
---|
✔️ |
Nano Stores
超小的
超快速
无头的
JS 状态容器,具有很好地 TS 支持,本身不局限于框架,但作者还是提供了针对特定框架的集成 vue-store
Preact-store
React-store
Solid-store
公网仓库
Github | 生态仓库 Github | Npm支持度&兼容性
Vanilla | React | Preact | Vue | Solid | Svelte | React Native |
---|---|---|---|---|---|---|
✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Xoid
可扩展
与框架无关
的状态管理器,简单性
扩展性
是它的特点,本身基于atoms
,推崇原子化
状态,为React
提供了集成和说明示例
Vanilla | React | Vue | 其他 |
---|---|---|---|
✔️ | ✔️ | ✔️ | ✔️ |