react简书项目学习笔记28redux拆分redcer,action便于管理

1.当把所有数据以及对数据的操作都放在同一个文件中时,这个文件必须会变得非常大,这样的话设计就显得不够合理。(一般一个文件的代码别超过300行)const defaultState = { focused: false};export default (state = defaultState, action) => { if (action.type === 'search...
摘要由CSDN通过智能技术生成

1.当把所有数据以及对数据的操作都放在同一个文件中时,这个文件必须会变得非常大,这样的话设计就显得不够合理。(一般一个文件的代码别超过300行)

const defaultState = {
  focused: false
};

export default (state = defaultState, action) => {
  if (action.type === 'search_focus') {
    return {
      focused: true
    }
  }
  if (action.type === 'search_blur') {
    return {
      focused: false
    }
  }
  return state;
}

解决办法:我们可以对reducer进行拆分
拆分多个文件存放数据,对应的组件可以有对应的reducer
eg,对于header,我们可以在其下创建相应的store文件夹存放其相关reducer
在这里插入图片描述
combineReducers可以把一些小的reducer合成大的reducer
在src/store/reducer下配置

import { combineReducers } from 'redux';
import headerReducer from '../common/header/store/reducer';

export default combineReducers({
  header: headerReducer
})
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值