redux-核心概念

redux流程:Action => Reducer => State

1.Action

强制使用action来改变state, 这样可以清晰的知道应用当中发生什么、因为什么而改变。

function demoAction() {
    return {
        type: 'test',
        data: {}
    };
}
store.dispatch(demoAction);

action就是一个普通的js对象

2.Reducer

reducer的作用相当于是action与state的连接器;

function demoReducer(state, action) {
    if(action.type === 'test') {
        return action.data;
    } else {
        return state;
    }
}

reducer只是一个接收state、action并返回新state的函数

3.State

state类似于普通对象:

{
    test: anything
}

state的特殊在于他没有setter,你不能随便修改他。想要更新state中的数据,需要发一个action

三大原则

上述描述包含了redux的三大基本原则:
1. 单一数据源(整个应用的state被存储在一个object tree中, 这个obj tree只存在于唯一一个store中)
2. state是只读的(唯一改变state的方法是通过触发action)
3. 使用纯函数来执行修改(为了描述action如何改变state tree, 需要编写reduecers)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值