Ожидается: Я пытаюсь получить доступ к данным состояния в переменной и манипулировать переменной. и снова я установлю манипулируемую дату в setstate.
Проблема: когда я назначаю состояние переменной, а не просто копирую данные в это состояние, оно становится дубликатом самого состояния, следовательно, когда я манипулирую самим состоянием данных, изменения.
Примечание: в приведенном ниже коде, tmpData.splice
- это место, где изменяется состояние, когда я меняю переменную tmpData
.
onRowAdd: newData => new Promise(resolve => {
setTimeout(() => {
{
const { data } = this.state;
const tmpData = data;
const tmpRowData = this.getRowData(this.state.valorenVal ? this.state.valorenVal : newData.nr ? newData.nr : '');
if (tmpRowData.length >= 1) {
if (newData.number && tmpRowData[0].nr) {
tmpRowData[0].number = newData.number ? newData.number : '';
tmpData.splice(tmpData.length, 0, tmpRowData[0]);
this.setState({ data: tmpData }, () => resolve());
this.setState({ valorenVal: '' });
} else {
this.setState({ data }, () => resolve());
}
} else {
this.setState({ data }, () => resolve());
}
}
resolve();
}, 1000);
}),
Я новичок в React, это может бытьглупый вопрос, но ваш ответ поможет мне лучше понять React.