之前学习过react 和redux的状态管理,这几天在看dva;
蚂蚁金服出了两个关于react的框架:1,dva--对于redux和路由的封装,因为redux管理状态不是太好写和维护,2,antDesign ----样式框架;
用的话,首先的话应该引入一系列的dva模块;
import balabala from “balabala”
再先new出来一个dva对象,
const app=new dva()
在这个对象的基础之上,有几个方法的调用比如app.model ( ), app.router( ) , app.start( );等方法;
其中app.model ({ } )中定义了namespace,state的初始化,reduces的规则定义;effects的异步调用 使用*(){}函数;subscritions定义一些数据源 ,来触发reducers的方法;
namespace :字符串 , 来定义整体的命名空间;
其他的四个 全部都是 传入对象的方式;
然后定义一个 标签变量(这里我们叫他HomePage好了) 来return 出页面的标签;
然后定义 mapStateToProps的方法来实现 model里的state的输出规则;
使用dva里的{connect}方法来实现mapStateToProps的方法与HomePage的绑定;
const AppPage=connect(mapStateToProps)(HomePage);
继续定义app.router( ),把AppPage作为路由组件使用;
然后调用app.start( );绑定带页面的id 实现渲染;
最下面还可以写一些补充方法比如 effects的异步promise函数;