concent - 服务于 react 的增强型状态管理方案


MIT
跨平台
JavaScript

软件简介

concent是一个服务于react,兼容redux生态的渐进式&高性能状态管理方案,基于依赖标记、引用收集和状态分发原理工作,通过独有的实例上下文机制增强组件能力,抹平类组件和函数组件的生命周期函数写法差异,内置computed、watch、setup、event等高级特性,让逻辑复用更优雅、组件表现形式更丰富、应用架构更稳健。

✨特性

  • 极简的核心apirun载入模块配置启动concent,register注册组件,无需包一层Provider在根组件。
  • 0入侵成本接入 ,不改造代码的情况下直接接入;hello-concent
  • 贴心的模块配置 ,除了state,还提供reducercomputedwatchinit四项可选定义。
  • 灵活的数据消费粒度 ,支持跨多个模块场景,以及模块内stateKey级别的细粒度控制。
  • 渐进式构建react应用 ,除了setState,支持dispatchinvoke调用来让ui视图与业务逻辑彻底解耦。从class到function
  • 组件能力增强 ,支持实例级别computedwatch定义,支持emit&on,以及支持setup特性,让函数组件拥有定义静态api的能力。
  • 高度一致的编程体验hocrender propshook3种方式定义的组件均享有一致的api调用体验,相互切换代价为0。多种方式定义组件
  • 渲染性能出众 ,内置renderKeylazyDispatchdelayBroadcast等特性,保证极速的渲染效率。长列表精准渲染批处理状态提交高频输入场景状态延迟分发
  • dom层级干净 ,对于class组件,默认采用反向继承策略,让react dom树的层级结构保持简洁与干净。
  • 扩展中间件与插件 ,允许用户定义中间件拦截所有的数据变更提交记录,做额外处理,也可以自定义插件,接收运行时的发出的各种信号,按需增强concent自身的能力。
  • 去中心化配置模块 ,除了run接口一次性配置模块,还提供configure接口在任意地方动态配置模块。
    模块克隆,支持对已定义模块进行克隆,满足你高维度抽象的需要。