zoukankan      html  css  js  c++  java
  • 【React】----redux-promise-middlewarw

    转载于 这里

    一、安装

      cnpm install  redux-promise-middleware --save-dev

    二、Middleware的由来

     

    单一的state是存储在store中,当要对state进行更新的时候,首先要发起一个action(通过dispatch函数),action的作用就是相当于一个消息通知,用来描述发生了什么(比如:增加一个Todo),然后reducer会根据action来进行对state更新,这样就可以根据新的state去渲染View

     

    当然上面仅仅是发生同步Action的情况下,如果是Action是异步的(例如从服务器获取数据),那么情况就有所不同了,必须要借助Redux的中间件Middleware。

     

    官方的解释:Redux的中间件是在发起一个action至action到达reducer的之间提供的第三方扩展,中间件的使用在action和store.dispatch之间进行使用

     

    三、redux-promise

    store.dispatch的action的payload属性可以放promise对象

     

    使用方法:

    (1)、引入

    import {createStore,applyMiddleware} from "redux";

    import promiseMiddleware from "redux-promise-middleware";

     

    (2)加入中间件

    const store = createStore(reducer, applyMiddleware( promiseMiddleware() ) )

     

    (3)、在action中编写异步action

    注意:这个异步的action会传递过来两个type信息  

    第一个是ADD_ITEM_PENDING   

    第二个是ADD_ITEM_FULFILLED,

    当在ADD_ITEM_PENDING 我们可以做一个Loding动画,

    当ADD_ITEM_FULFILLED的时候我们可以将数据加载到页面上

     

    (4)、组件中使用

    https://github.com/pburtchaell/redux-promise-middleware    官方地址

  • 相关阅读:
    JavaScript 操作CSS
    源码搭建LAMP服务器
    Modified 2 color sort
    python的网络库
    找出有序整数数组中下标与值相同的所有元素
    sql 查看Oralce 数据库连接状态
    oracle 快闪 sql
    Sql server dblink
    昆山桶装水/免费送货上门/
    C# Tostring() 格式大全 [转]
  • 原文地址:https://www.cnblogs.com/asenper/p/9896653.html
Copyright © 2011-2022 走看看