class RegistrationPage extends Component {
state = {
value:'',
value1:'',
value2:'',
value3:'',
value4:'',
course:{
watchHref:'',title:'',authorId:'',category:'',length:''
}
}





Используйте приведенную ниже функцию, чтобы скопировать свое значение в объект курса в состоянии,
copyVal(){
let course = {...this.state.course};
course.watchHref = this.state.value1;
course.title = this.state.value2;
course.authorId = this.state.value3;
course.category = this.state.value3;
course.length = this.state.value4;
this.setState({course:course});
}
SetState является асинхронным, поэтому, если вы хотите вести журнал, вы можете сделать это с помощью его функции обратного вызова, то есть this.setState({course:course},()=>{console.info(this.state.course)});. И, пожалуйста, примите ответ, если приведенные выше утверждения сработали для вас.
на этот раз невозможно увидеть журнал
Хорошо, попробуй this.setState({course:course},()=>{console.info(this.state)});
Кстати, значения не обновляются для объекта курса, присутствующего в состоянии, вместо этого он просто обновляется в this.setState ({course: course}), и я не увижу, что значения обновляются в состоянии
Вы хотели скопировать значения в Value 1,2,3,4 в объект курса с помощью setState, верно? Вы имеете в виду объект курса, который не в состоянии?
Я не могу понять вашу текущую проблему
Я пытаюсь сохранить значение для хранения, прежде чем нужно обновить значения в состоянии, чтобы я мог отправить объект для хранения
надеюсь, вы поняли проблему
строка # 68 не выполняется, как я дал в ответе, и, как я уже упоминал в своем предыдущем комментарии, пожалуйста, добавьте console.info вместе с setState, this.setState({course:course},()=>{console.info(this.state)});
{значение: "chida", значение1: "мммм", значение2: "888", значение3: "999", значение4: "[email protected]",…} LNameError: "" course: authorId: "" category: " "length:" "title:" "watchHref:" "прото: Object eMailError:" "fNameError:" "mNumError:" "registrationData:" Добро пожаловать в регистрационную форму "sapIdError:" "value:" chida "value1:" mmmm " значение2: «888» значение3: «999» значение4: «[email protected]»
Я добавил и удалил, так как console.info не печатает
Запись в качестве следующего оператора в setstate никогда не покажет вам правильный журнал.
Вы меняли строку №68 на let course = {...this.state.course}; ??
отладчик показал, что значения обновляются, но, к сожалению, я попытался записать вывод с помощью console.info (this.state.course); я мог видеть пустые значения