Reatom 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
Reatom 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
Reatom 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 MIT
开发语言 JavaScript TypeScript
操作系统 跨平台
软件类型 开源软件
开源组织
地区 不详
投 递 者 白开水不加糖
适用人群 未知
收录时间 2021-09-09

软件简介

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
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击引领话题📣
暂无内容
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
0 评论
0 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部