Reatom声明式状态管理器

联合创作 · 2023-09-23 15:44

Reatom 是一个声明式状态管理器,专为简单和复杂的应用程序而设计。


特性:



  • 简单的 abstraction 和友好的 DX:最小的模板和最小的 API

  • 性能:部分状态更改的性能更新

  • reliableatomicity 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
浏览 26
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报