Очистка состояния redux

148
28 мая 2019, 06:50

Возможно ли очистить redux? Чтобы все пришло к начальному состоянию.

Answer 1

Возможно, но только руцями. Мой пример ниже но так же можете прочесть ответ от Dan Abramov сосоздателя Redux How to reset the state of a Redux store?

  1. Создаете action который будет вызываться тогда когда надо вернуться в изначальное состояние reduser'(а/ов).
  2. В каждом redusers создаете к примеру case 'DEFAULT_STATE': return initialState где DEFAULT_STATE может являться типом а defaultState это ваше изначальное состояние reduser'a.

К примеру:

// Clear store action 
const DEFAULT_STATE = 'DEFAULT_STATE'; 
 
export function ClearStore() { // вызываете ClearStore там где Вам это нужно. К примеру при logout пользователя. 
  return { 
    type: DEFAULT_STATE, 
  }; 
} 
 
// Redusers 
const defaultState = { 
  list: [], 
  data: {}, 
  pagination: { 
    page: 1, 
    perPage: 10, 
  }, 
  loading: true, 
}; 
 
export default (state = defaultState, action) => { 
  switch (action.type) { 
    case CLEAR_DATA: // вызываете CLEAR_DATA в каждом из redusers или там где Вам нужно. 
      return defaultState; 
    default: 
      return state; 
  } 
};

READ ALSO
Redirect из контроллера в Laravel 5

Redirect из контроллера в Laravel 5

Задача из скрипта послать AJAX запрос на удаление записи в БД и вернуться на главную страницу

123
Взаимосвязь полей date, обработчик события date

Взаимосвязь полей date, обработчик события date

Есть два html поля date, дата отправки и дата прибытияВремя, затраченное на путь, лежит в бд

139
Input HTML с автоподтягиванием результатов

Input HTML с автоподтягиванием результатов

ЗадачаКлиент на фронте вводит адрес по русски

155
Перевести sql запросы с PostgreSql в MySql

Перевести sql запросы с PostgreSql в MySql

Доброго времени суток

139