Как правильно изменять состояние redux, react-redux?

Всем привет.

Начал изучать redux, так и не понял как праильно надо менять состояние(store),

прочитал несколько статей везде говорится надо использовать чистые функции.
Что такое чистые функции я знаю, но так и не понял как менять состояние

Сейчас делаю так

function reducer(state, action){

	switch (action.type) {

		case 'LOGGED': {

			return {
				isLogged : true,
				user: action.user 
			}

		};

		default: return state;

	}

}

export default reducer;

Правильно или нет?
  • Вопрос задан
  • 167 просмотров
Решения вопроса 2
E1ON
@E1ON
Programming, Gamedev, VR
Просто придерживайтесь иммутабельности данных:
return {
    ...state,          // Разворачиваем старое состояние
    isLogged : true,   // обновляем свойства которые нужно
    user: action.user  // обновляем свойства которые нужно
}

Иммутабельность:
Неизменяемым (англ. immutable) называется объект, состояние которого не может быть изменено после создания. Результатом любой модификации такого объекта всегда будет новый объект, при этом старый объект не изменится.
Ответ написан
mmmaaak
@mmmaaak
менять состояние + чистые функции = функция, которая не меняет старое состояние, а вычисляет и возвращает новое состояние на основе старого (ну и в частности также на основе полученного action)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы