Обновить свойство для всех объектов в состоянии массива в React - PullRequest
0 голосов
/ 06 марта 2020

В массиве объектов я хотел бы обновить определенное свойство для всех объектов. Допустим, мое состояние выглядит следующим образом:

const [state, setState] = useState([
  {
    number: "4",
    category: "firstCategory"
  },
  {
    number: "6",
    category: "secondCategory"
  }
])

Как мне установить для свойства number значение 0 во всех объектах?

1 Ответ

2 голосов
/ 06 марта 2020
const newState = state.map(item => ({...item, number: "0"});
setState(newState);

Это создаст новый (клонированный) массив, в котором каждый элемент будет таким же, как был, но с number: "0", а затем обновит состояние с помощью

...