По какой причине мой редуктор не обновляет контекст должным образом? - PullRequest
0 голосов
/ 03 апреля 2020

Я использую редуктор для обновления контекста.

case 'SET_POSTS':
      return { ...state, posts: action.posts };
case 'REMOVE_POST':
      return {
        ...state,
        posts: state.posts.filter(post => post.id != action.id)
      };

Эта отправка не будет запускать обновление

dispatch({ type: 'SET_POSTS', posts: [res, ...context.posts] });

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

dispatch({ type: 'SET_POSTS', posts: [...context.posts, res] });

Я мог бы предположить, что это может быть проблема с оператором распространения, перезаписывающим первый пост, но я не могу заставить редуктор правильно отфильтровать правильный пост, когда я Удалить сообщение либо.

dispatch({ type: 'REMOVE_POST', id: state.id });

Вот мое начальное состояние.

const initialState = {
  user: null,
  errors: [],
  loading: false,
  posts: []
};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...