Я пытаюсь найти лучший способ удалить элемент из массива в состоянии компонента. Поскольку мне не следует изменять this.state
переменную напрямую, есть ли лучший (более краткий) способ удалить элемент из массива, чем тот, который у меня здесь ?:
onRemovePerson: function(index) {
this.setState(prevState => { // pass callback in setState to avoid race condition
let newData = prevState.data.slice() //copy array from prevState
newData.splice(index, 1) // remove element
return {data: newData} // update state
})
},
Спасибо.
обновленный
Это было обновлено для использования обратного вызова в setState. Это следует делать при обращении к текущему состоянию при его обновлении.