Идентификатор идентификатора уже был объявлен в редукторе - PullRequest
0 голосов
/ 04 июля 2019

Я получаю вышеуказанную ошибку с моим reducer, как я могу использовать id в обоих случаях переключения?

case "SUBMIT_ANSWER":
    const { current, results, completed, id } = action.data;

    return state.map(video =>
        video.id === id
            ? { ...video, current, results, completed }
            : video
    );
case "RESET_QUIZ":
    const { id } = action;
    console.log("action", action);
    console.log("state", state);
    return state.map(video => {
        video.id == id
            ? {
                  ...video,
                  completed: false,
                  current: 0,
                  results: {
                      correctAnswers: 0,
                      score: 0
                  },
                  totalScore: 0
              }
            : video;
    });

1 Ответ

1 голос
/ 04 июля 2019

Простой .... просто оберните код каждого случая в фигурные скобки {}

Например,

case '1': { your code here }
case '2': { your code here }

пусть имеет область видимости блока. Так как есть только один блок, который начинается с переключателя. Таким образом, все переменные сохраняются во всем блоке переключателей.

После вставки фигурных скобок {} в каждом случае они будут работать как область видимости ваших переменных. После завершения области видимости переменная не может быть использована после этого.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...