e: Редуктор реагирует на действие, которое он не слушает

У меня есть действие FETCH_HABITS_SUCCESS, которое вызывается с правильными данными:

Данные действия

но это влияет на редуктор, который не слушает его:

влияет на редуктор даты

Редуктор даты не слушает FETCH_HABIT_SUCCESS. Данные, показанные в разнице с предыдущего изображения, должны быть данными из UNMARK_SUCCESS (два действия позже на временной шкале выполнения).

По какой-то причине реальные изменения действия UNMARK_SUCCESS происходят при вызове FETCH_HABIT_SUCCESS, по крайней мере, так показывают инструменты разработки. Я проверил, что все мои редукторы не изменяют состояние. Я всегда делаю копию государства. Люди в Reactiflux проверили, что я тоже не изменяю состояние.

Код:

даты редуктора: https://www.pastiebin.com/5a03538e98322 привычки редуктора:

export default function habits(state = {}, action) {
   const newState = { ...state };
   switch (action.type) {
     case 'FETCH_HABITS_SUCCESS':
       action.habits.forEach(habit => { newState[habit.id] = habit; });
       return newState;
     case 'ADD_HABIT_SUCCESS':
     case 'EDIT_HABIT_SUCCESS':
       newState[action.habit.id] = action.habit;
       return Object.assign({}, state, newState);
     case 'DELETE_HABIT_SUCCESS':
       delete newState[action.habit_id];
       return newState;
     default: return state;
  }
}

Кто-нибудь имеет представление о том, что я могу делать не так?

0 ответов

Другие вопросы по тегам