DvaJS

React and redux based, lightweight and elm-style framework.

快速上手 →

易学易用

仅有 6 个 api,对 redux 用户尤其友好,配合 umi 使用后更是降低为 0 API

elm 概念

通过 reducers, effects 和 subscriptions 组织 model,简化 redux 和 redux-saga 引入的概念

插件机制

比如 dva-loading 可以自动处理 loading 状态,不用一遍遍地写 showLoading 和 hideLoading

# 说明

  • 原官网 dvajs.com 目前不可访问;
  • 该网站将长期支持维护,并及时同步 GitHub 最新文档;
  • 问题讨论

# 致敬 Dva.js:经典永不过时

在前端框架和库层出不穷的时代,Dva.js 通过“约定优于配置”的设计理念,使得开发者能够更加专注于业务逻辑的实现,而无需过多关注框架的配置细节。Dva.js 不仅继承了 Redux 的强大状态管理能力,还结合了 React 的最佳实践,为开发者提供了一套简单易用、功能强大的应用开发框架。

  1. 简洁的 API 设计: Dva.js 的 API 设计极为简洁,使得开发者可以快速上手并高效开发。无论是创建模型、定义 reducer 还是处理副作用,Dva.js 都提供了清晰、直观的接口,减少了学习成本。
  2. 强大的状态管理: Dva.js 基于 Redux,但通过封装和优化,使其更加易于使用。它提供了统一的数据流,确保了应用状态的一致性和可预测性,极大地提升了应用的可维护性。
  3. 灵活的扩展性: Dva.js 支持插件系统,开发者可以根据项目需求自由扩展功能。无论是数据持久化、中间件还是路由管理,Dva.js 都提供了丰富的插件生态,满足不同场景的需求。

# 命名由来?

D.Va拥有一部强大的机甲,它具有两台全自动的近距离聚变机炮、可以使机甲飞跃敌人或障碍物的推进器、 还有可以抵御来自正面的远程攻击的防御矩阵。

—— 来自 守望先锋

# 社区

Slack Group Github Issue
sorrycc.slack.com umijs/umi/issues

https://t.me/joinchat/G0DdHw9tDZC-_NmdKY2jYg