Как я могу изменить несколько элементов состояния в магазине redux-реагировать - PullRequest
0 голосов
/ 09 февраля 2019

У меня есть несколько значений, сохраненных в исходном состоянии моего редукса, и у меня есть один обработчик действия StepOneFn, который принимает все значения, которые мой компонент дал ему для изменения.Я хочу обновить исходное состояние, чтобы изменить только некоторые значения.Я не уверен, как это сделать.

let initial_state = {
    house_name:"",
    address:"",
    city:"",
    state:"",
    zip:0,
    img:"",
    mortgage:0,
    rent:0
}
const step_one = "step_one"

export default function reducer(state = initial_state,action){
switch(action.type){
    default:
        return state;
    case step_one:
        return {...state,...action.payload}
    }
}

export function StepOneFn(name,address,city,state,zip){
return{
    type:step_one,
    payload:{
        name,
        address,
        city,
        state,
        zip
    }
  }
}

1 Ответ

0 голосов
/ 09 февраля 2019

Если вы хотите изменить только некоторые значения, вы можете сделать это следующим образом

case step_one:
        return {...state, address:action.payload.address, city:action.payload.city}
    }

Теперь он меняет только город и адрес в соответствии с полезной нагрузкой, остальные не изменились.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...