Я немного запутался в форме ваших данных.Вы перебираете res.body
, обращаетесь к его значениям и распечатываете значение с ключевым городом из каждого из них в этом коде:
for (let key in res.body){
console.log(res.body[key].city)
}
Затем вы присваиваете res.body
клавише courses
в * 1007.* Это подразумевает форму состояния, наподобие:
this.state = {
courses: [
{ city: "New York"},
{ city: "San Francisco"},
{ city: "Jerusalem"},
{ city: "Ho Chi Minh"}
]
}
(courses
тоже может быть объектом, но для массива это имело больший смысл) Однако, когда вы получаете доступ к состоянию, вы пишете следующее выражение:that.state.courses.body.city.map
.Это подразумевает, что состояние выглядит ближе к:
this.state = {
courses: {
body: {
city: [
"New York",
"San Francisco",
"Jerusalem",
"Ho Chi Minh"
]
}
}
}
Теперь, поскольку это JavaScript, возможно, вы оба в форме состояния в одном и том же объекте.Но, откровенно говоря, это кажется маловероятным и, если да, опрометчивым.Мое предложение состоит в том, чтобы упростить форму состояния, чтобы неопределенные ошибки могли быть изолированы для определенных частей вашего состояния, которые отсутствуют.И если это должно быть сложное состояние, выпишите формат.