理解 redux

Redux是一个独立的状态管理架构,常用于React应用。它包含action、reducer和store三个要素。action描述状态变化,reducer处理action并返回新状态,store则管理状态和reducer。开发者需要定义action和reducer,然后通过createStore创建store。store提供了dispatch和getState等方法来执行和获取状态。reducer必须是纯函数,不能直接调用,且不能有副作用。
摘要由CSDN通过智能技术生成

redux是当下流行的web前端所使用的一个状态管理架构。它本身是一个独立的构造,没有与任何其它库的耦合。由于reactjs的流行, 它自然而然的成为了react状态管理的延伸架构。 本文不打算讨论redux的优点以及细节, 只是想从纯粹的设计角度去理解redux状态管理的模式。

概览

redux把状态管理抽象成3个要素, action, reducer, store。

action是状态变化的描述性数据结构, 即一个标签(type)来标识action的名字, 和相关的数据

    {
        type: "添加订单",
        text: "Eat meal"
    }

reducer是action的handler, 是一个函数来具体执行状态变化操作.

store是状态对象和reducer的管理器, 在使用redux的时候, 你不应该直接执行reducer, 这破坏了它的设计意图。你要把它放到store中, 通过store去执行(dispatch)状态变化操作, 你也要通过store来获取状态对象。

更具体的描述:

  1. action, 描述发生了什么的对象, action是store的唯一信息来源, 通过store.dispatch(action)产生,
    而dispatch就是去调用reducer更新状态, 在store内部, currentState维持应用程序的当前状态:

    currentState = currentReducer(currentState, action)
    

    一个action的结构:

    {
        type: "ADD_TODO",
        text: "Eat meal"
    }
    
  2. reducer, 完成acti

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值