Внутри моего редуктора есть следующий корпус. Это срабатывает, когда пользователь отвечает на вопрос. Когда пользователь отвечает на вопрос, его необходимо удалить из вложенного массива.
Пример объекта вопроса (они находятся в массиве)
{
"title": "Quick Questions",
"questions": [
"title": "Hello?"
"answers" [ /*... array of answers in here */ ]
]
}
Мой редуктор
case ANSWER_QUESTION:
// The 0s here would be dynamically populated
state.questionGroups[0].questions.splice(0, 1)
return Object.assign({}, {
...state,
})
Тем не менее, здесь я непосредственно манипулирую состоянием, которое, как я знаю, является неправильным и приведет к тому, что приёмник не будет корректно обновлять состояния, чтобы заставить мои компоненты перерисовываться.
Как правильно это сделать?
РЕДАКТИРОВАТЬ: Это может или не может быть причиной того, что мой компонент не выполняет повторную визуализацию. Это может быть связано с тем, что при использовании connect()
применяются только поверхностные сравнения, это правильно?