dva 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
dva 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
dva 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
dva 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
dva 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !
授权协议 MIT
操作系统 跨平台
软件类型 开源软件
开源组织
地区 国产
投 递 者 IT_小翼
适用人群 未知
收录时间 2016-09-26

软件简介

基于 React 和 Redux 的树型结构轻量级 JS 框架。(灵感来自 Choo)。

特点:

  • 基于 redux、redux-saga 和 react-router:站在巨人的肩膀上。

  • small api:仅 5 个 api 方法,很容易学习。

  • elm cocepts:基于 reducers、effects 和 subscriptions 的组织模型。

  • 支持 mobile 和 react-native:跨平台。

  • 动态 model 和 router:拆分大型应用程序和负载的需求。

  • plugin system:可扩展 dva。

  • hmr support with babel-plugin-dva-hmr

简单使用方法:

import dva, { connect } from 'dva';

// 1. Create app
const app = dva();

// 2. Add plugins (optionally)
app.use(plugin);

// 3. Register models
app.model(model);

// 4. Connect components and models
const App = connect(mapStateToProps)(Component);

// 5. Config router with Components
app.router(routes);

// 6. Start app
app.start('#root');
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (0)

加载中
更多评论
暂无内容
发表了博客
2017/10/22 13:34

dva

感谢支持ayqy个人订阅号,每周义务推送1篇(only unique one)原创精品博文,话题包括但不限于前端、Node、Android、数学(WebGL)、语文(课外书读后感)、英语(文档翻译) 如果觉得弱水三千,一瓢太少,可以去 http://blog.ayqy.net 看个痛快 一.目标定位 想解决什么问题?打算怎么做? 简言之:dva想提供一个基于业界react&redux最佳实践的业务框架,以解决用裸redux全家桶作为前端数据层带来的种种问题 编辑成本高,需要在...

0
0
发表了博客
2018/05/03 16:55

dva 基础

一、dva 是什么? dva 是基于现有应用架构 (redux + react-router + redux-saga 等)的一层轻量封装,没有引入任何新概念,全部代码不到 100 行。( Inspired by elm and choo. ) dva 是 framework,不是 library,类似 emberjs,会很明确地告诉你每个部件应该怎么写,这对于团队而言,会更可控。另外,除了 react 和 react-dom 是 peerDependencies 以外,dva 封装了所有其他依赖。 dva 实现上尽量不创建新语法,而是用依赖库本身...

0
0
发表了博客
2018/07/03 10:48

Dva入门

# Dva 入门 概念:dva是体验技术部开发的react应用框架,将react-router/redux/redux-saga(异步操作)三个工具库包装在一起,简化API,让react应用更加方便、快捷。 dva是framwork,不是library,类似emberjs,使用依赖库本身的语法。简化开发,相当于一个大的语法糖。 数据流图:start-(connect)->view-(dispatch)->action state:通过创建一个state对象,保存整个应用状态, action:是一个对象,用来描述事件; connect方法:一个...

0
0
发表了博客
2019/08/22 14:56

dva-loading

过渡组件 dva-loading 传统做法 比如请求一个用户页面,刚进去的时候由于要去服务器请求数据需要花费时间,这段时间页面应该是不能点击的状态。 如果不使用这个组件,传统做法是写个蒙版组件,提供两个方法 start() 和 end(),当进行 ajax 请求开始时调用 start() 方法给整个页面加上一层蒙版,此时不能进行操作,在请求结束也就是 ajax 的 success 回调函数中调用 end() 方法关闭蒙版,表明数据已经请求到了,可以操作页面。 ...

0
0
发表了博客
2018/07/31 17:35

dva model

原文:https://blog.csdn.net/lizhen_software/article/details/79455150 1、model相当于vue的vuex,里面包含了但向数据流的所有的控制 2、在vue中我们一般定义一个全局的头部标题字段,并且在mounted中调dispatch改变,但在dva的model中这段分为了两个部分,其中effects是异步修改数据时调用的, 也就是在react的componentDidMount的生命周期里面需要调用的是异步的effects的action,但如果是用户操作的某个方法是,可以直接调用...

0
0
发表了博客
2020/05/24 15:36

关于dva/fetch和dva/router的警告提示

一: 先看警告提示 二:关于fetch的问题 将import fetch from 'dva/fetch';替换为 import { fetch } from 'dva'; 可以解决 // import fetch from 'dva/fetch'; import { fetch } from 'dva'; 三:关于router的问题 经过长时间的排出,由于采用的是umi框架,umi包中引用的dva格式问题,重新install umi之后 解决上述问题...

0
0
发表了博客
2018/07/10 09:37

React dva 的使用

各大传送门: DvaJS Github DvaJS API与示例 了解 dva - dva = React-Router + Redux + Redux-saga + fetch - dva的初衷是(其实应该是redux的初衷)。提供一个公共的顶层的状态管理工具,专门为view层服务(实现双向数据流),而让react只专注专心负责渲染view层。 dva项目入口初始化 在初始化的时候,指定使用的路由模式,这里使用了hash模式。 import dva from 'dva'; import createHistory from 'history/createHashHisto...

0
0
发表了博客
2020/03/19 20:24

dva源码分析

https://juejin.im/post/5e5b19fcf265da572446749b 本文同步在个人博客shymean.com上,欢迎关注 dva是基于react的二次封装,在工作中经常用到,因此有必要了解一下其中的实现。本文将从源码层面分析dva是如何将redux、redux-saga、react-router等进行封装的。 本文使用的dva版本为2.6.0-beta.20,参考 dva项目地址 dva官网 dva构建流程 下面是一个简单的dva应用 // 初始化应用 const app = dva({ onError(error) { ...

0
0
发表了博客
2018/02/28 18:33

使用dva脚手架(dva-cli)快速构建React项目

安装 dva-cli 你应该会更希望关注逻辑本身,而不是手动敲入一行行代码来构建初始的项目结构,以及配置开发环境。 那么,首先需要安装的是 dva-cli 。dva-cli 是 dva 的命令行工具,包含 init、new、generate 等功能,目前最重要的功能是可以快速生成项目以及你所需要的代码片段。 $ npm install -g dva-cli 安装完成后,可以通过 dva -v 查看版本,以及 dva -h 查看帮助信息。 创建新应用 安装完 dva-cli 后,我们用他来创建一个...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
暂无内容
0 评论
12 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部