Redux обновить объект с несколькими параметрами - PullRequest
0 голосов
/ 23 мая 2018

Здравствуйте, у меня есть такие мои редукторы, как это

case UPDATE_USER: {
  return {
    ...state,
    ...action.newDataUser,
  }
}

Мой объектный пользователь:

 {
    name: 'azerty',
    email: 'azerty@yopmail.com',
    birthday: '1990'
 }

У меня есть действие для обновления моего пользовательского объекта:

export function updateUser(newDataUser) {
  return { type: UPDATE_USER, newDataUser }
}

Как изменить мои редукторы UPDATE_USER для обновления объекта пользователя с несколькими свойствами:

{
   name: 'azerty updated',
   email: 'azerty@yopmail.com updated',
}

Спасибо

1 Ответ

0 голосов
/ 23 мая 2018

Вы можете вручную обновить необходимые свойства

case UPDATE_USER: {
  let user = action.newDataUser;
  ['name', 'email', 'birthday'].forEach(key => {
     user[key] = `${user[key]} updated`;
  });
  return {
    ...state,
    ...user,
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...