美文网首页
redux-拆分state

redux-拆分state

作者: skoll | 来源:发表于2021-01-29 15:40 被阅读0次

一个最小的redux实例

const set_clientUrl="set_clientUrl"
const set_clientReload="set_clientReload"

const initState={
    clientUrl:"http://192.168.40.199:8998/",
    isReload:0,
}
// initState为什么会变?

function reducer(state=initState,action){
    switch(action.type){
        case set_clientUrl:{
            return Object.assign(state,{"clientUrl":action.payload.clientUrl})
        }
        case set_clientReload:{
            // 原数据和新数据的merge操作怎么才是优美的操作呢
            return Object.assign(state,{"isReload":state.isReload+=1})
        }
        default:
            return state
    }
}

function otherReducer(state=initState,action){
    switch(action.type){
        case set_clientUrl:{
            return Object.assign(state,{"clientUrl":action.payload.clientUrl})
        }
        case set_clientReload:{
            // 原数据和新数据的merge操作怎么才是优美的操作呢
            return Object.assign(state,{"isReload":state.isReload+=1})
        }
        default:
            return state
    }
}

合并到成一个新的state

import {combineReducers} from 'redux'
const AllReducer=combineReducers({reducer,otherReducer})
export {AllReducer}

使用

1 .index.js里面
import {createStore}from 'redux'
import {AllReducer} from './redux/reducer'

2 .单独的文件使用
const clientUrl=useSelector(state=>state.reducer.clientUrl)

3 .提交:这里好像有点问题
提交之后上面的reducer要改下
function reducer(state=initState,action){
    console.log(action.payload)
    switch(action.type){
        case set_clientUrl:{
            return Object.assign(state,{"clientUrl":action.payload.value})
//这里要变成是value
        }
        case set_clientReload:{
            // 原数据和新数据的merge操作怎么才是优美的操作呢
            return Object.assign(state,{"isReload":state.isReload+=1})
        }
        default:
            return state
    }
}

相关文章

  • redux-拆分state

    一个最小的redux实例 合并到成一个新的state 使用

  • React进阶(4)-拆分Redux-将store,Reduce

    前言 在前面的几小节中已经完成了一个todolist的添加,删除的操作,通过把组件的数据放到了Redux中的公共存...

  • combineReducers原理

    简介 随着应用变得复杂,需要对 reducer 函数 进行拆分,拆分后的每一块独立负责管理 state 的一部分。...

  • 从零到一搭建 react 项目系列之(十)

    本文将介绍 Reducer 的拆分。 Reducer 函数负责生成 State。但由于整个 Web 应用只有一个 ...

  • vue store使用

    1、流程顺序 “相应视图—>修改State”拆分成两部分,视图触发Action,Action再触发Mutation...

  • 数据驱动视图

    数据驱动视图 状态: 数据结构设计(React-state, Vue-data) 视图: 组件结构和拆分 stat...

  • 前端分层架构-网络层拆分

    概览 此篇文章用于说明前端分层架构中网络层拆分的代码实现。 三层架构(未涉及state层) view(视图层): ...

  • 轻松搞定 -react-redux-基本用法

    1. 前言 之前写了几篇关于 redux和react-redux文章,链接如下redux-基础[https://w...

  • Redux-基础

    参考Redux 入门教程(一):基本用法 Redux 入门教程(二):中间件与异步操作 Redux 入门教程(...

  • redux-调试

    参考文档:http://chromecj.com/web-development/2018-03/931.html

网友评论

      本文标题:redux-拆分state

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