Добрый день, не могу понять, почему при добавлении новых элементов в массив taskArray, после нажатия кнопки, они дублируются?
Когда пользователь вводит "Hello", ожидаемое изменение массива taskArray ["Hello"], вместо этого выводится ["Hello", "Hello"]. Возможно, дело в том, что taskArray и newArray являются по сути одним и тем же массивом, но всё же не понятно, откуда берётся копия добавляемого в массив элемента.
class App extends React.Component {
constructor(props) {
super(props)
this.state = {taskArray: []}
}
clickHandler() {
const inputVal = document.querySelector('input').value;
this.setState((prevState, prevProp) => {
let newArray = prevState.taskArray;
newArray.push(inputVal);
return {taskArray: newArray}
})
}
render() {
return (
<div className="App">
<input placeholder="Enter a task"></input>
<button
onClick={() => {
this.clickHandler();
console.log(this.state.taskArray)
}}>
Add task
</button>
</div>
)
}
}