美文网首页
DVAJS(一)介绍

DVAJS(一)介绍

作者: Viewwei | 来源:发表于2021-01-13 11:12 被阅读0次
    • 什么是dva?
      dva首先是一个基于redux和redux-saga的数据流解决方案。为了简化开发,dva还额外内置了reac-router和fetch。可以把它理解为一款轻量级的应用框架

    • 特性

      1. 简单易学,仅仅有6个api,对redux用户及其友好
      2. 通过reducer,effect和subscripions组织model
    • 数据流向


      PPrerEAKbIoDZYr.png

      所有的state通过connect流向组件,组件听过dispatch发起action请求,通过mode中的reducer和effect去改变state,effect副作用函数统一call/fock 同步或者异步与服务进行数据交互。

    • model介绍
      每个model中都包含6个api,分别是state,Action,dispatch reducer,effect Subscription

      • state
        state表示model的状态数据,通常是一个JavaScript对象。操作时候每次都要当做不可变数据对待,保证每次都是全新对象,没有引用关系,这样才能保证State的独立性
      • Action
        Action是一个普通的JavaScript对象,是改变State的唯一途径,无论是UI事件,网络回调,还是websocket等数据源获取数据,最终都是通过dispatch函数调用一个action
      • dispatch
        dispatch 函数是一个触发action函数,dispatch可以看成是触发这个歌行为的方式
      • reducer
        reducer函数接收两个参数,reducer来自函数式编程
      • Effect
        Effect 表示为副作用函数,在应用中最常见的就是异步操作。dva为了控制副作用的操作,底层是引用了redux-saga 做异步流程,由于采用了函数式编程(generator函数),所以讲异步转换成同步,从而Effect转成纯函数
      • Subscription
        Subscription 是一种从源获取数据的方法。它在函数被注册的时候调用

    相关文章

      网友评论

          本文标题:DVAJS(一)介绍

          本文链接:https://www.haomeiwen.com/subject/xafuaktx.html