Каков наиболее удобный подход для обновления объекта в Redux? - PullRequest
0 голосов
/ 19 июня 2019

У меня есть следующая структура избыточного состояния:

initState = {
    section1: {
        field1: true,
        field2: "asdfg"
    },
    section2: {
      ....
    },
    ....  
};

Каждое поле в разделе вводится в пользовательском интерфейсе.

Какой подход лучше для обновления состояния:

[actions.setSection1]: (state, section1) => {
    return {...state, section1}
}

или

[actions.setField1]: (state, field1) => {
    return {...state, section1: {...state.section1, field1}}
}

Я предпочитаю второй, но после изменения ввода мне нужно отправить раздел на сервер. Поэтому мне все равно нужно реализовать что-то вроде {... section1, field1} в моем компоненте, чтобы отправить последний объект. Вот почему выглядит лучше формировать объект в компоненте и обновлять весь раздел в Redx.

Не нашел, что является лучшей практикой в ​​этой ситуации. Как вы думаете?

1 Ответ

0 голосов
/ 19 июня 2019

Первый вариант обновит весь раздел, потеряв данные, которые он содержал ранее. Вторым вариантом будет частичное обновление раздела, только обновление необходимой информации.

Поскольку второй вариант более детальный, он оставляет меньше риска непреднамеренной потери данных, которая может произойти, если вызывающая функция внесла неизвестные изменения в раздел перед отправкой.

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