Ошибка мутации состояния Redux от действия к редуктору - PullRequest
0 голосов
/ 09 ноября 2018

Я получаю следующую ошибку при попытке изменить значение в элементе управления.

Uncaught (в обещании) Ошибка: обнаружена мутация состояния между рассылки, в пути test. Это может привести к некорректному поведению.

Ниже приведен код


Редуктор

export default function testReducer(state = {}, action) {
  switch (action.type) {
    case types.UPDATE_TEST_SUCCESS:
      return {
        ...state,
        test: action.test
      };
    default:
      return state;
  }
}

Действие

export function saveTest(testData) {
  return function(dispatch) {
    return testApi.testExam(testData).then(savedData => {
      dispatch(updateTestSuccess(savedData));
    });
  };
}

export function updateTestSuccess(exam) {
  return { type: types.UPDATE_Test_SUCCESS, exam };
}

API

static saveTest(testData) {
  let url = services.GET_Test_URL;
   return fetch(url, {
    method: 'PUT',
    body: JSON.stringify(testData).toString(), 
    dataType : "json",
    headers: {
          'Accept': 'application/json',
          'Content-Type': 'application/json'
      }
  }).then((response) =>  response.json())
   .then((testD) => Object.assign({}, testD))
  .catch((error) => { throw (error); });
}
...