Reatom声明式状态管理器
Reatom 是一个声明式状态管理器,专为简单和复杂的应用程序而设计。
特性:
- 简单的 abstraction 和友好的 DX:最小的模板和最小的 API
- 性能:部分状态更改的性能更新
- reliable:atomicity guaranties
- 静态类型:最佳类型推断
- 小尺寸:2 KB gzip
- 模块化:可重用实例(SSR)
- lazy:开箱即用的代码拆分解决方案
- framework-agnostic:独立和自给自足
- 测试:简单的模拟
- 调试:不可变数据和内置调试器
- IE11 支持:Can I Use
- synchronous glitch free
- 与其他库(Observable、redux 生态系统等)的简单集成
- 容易写出好的代码
Reatom 融合了 MobX 和 Redux 的所有优点。它通过分离的 atoms 来处理不可变的数据,并使用单一的全局存储,这使得数据流可预测,但 granular 且高效。
简短示例:
import { createAtom } from '@reatom/core' export const amountAtom = createAtom( { clear: () => null, add: (value: number) => value }, ({ onAction, schedule }, state = 0) => { onAction('clear', () => (state = 0)) onAction('add', (value) => (state = state + value)) schedule(() => render(`Amount is ${state}`)) return state }, ) amountAtom.getState() // -> 0 amountAtom.add.dispatch(7) amountAtom.getState() // -> 7
评论