Как обновить значение в массиве с указанием индекса c в React Native - PullRequest
0 голосов
/ 30 мая 2020

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

this.state = { answer : [] }

пользователь будет давать ответ и сохранять для ответа. возможно, значение будет похоже на ['a', 'b', 'c'] это просто пример ответа, который будет сохранен в массиве. Нет, функция викторины может отображать предыдущий или следующий вопрос, а пользователь может изменить ответ в массиве. Как изменить значение в массиве в указанном индексе c? В примере ответ b во втором индексе массива будет изменен на a. Как я могу изменить значение?

1 Ответ

1 голос
/ 30 мая 2020
// Use react setState callback to ensure you get the updated state value
this.setState((state) => {
  // Create new array to prevent passing reference to make it pure
  const newAnswer = [...state.answer]
  // Chage value of new array
  newAnswer[index] = newValue

  return {answer: newAnswer}
 }
)
...