Зависимый API ReactJS

Я новичок в ReactJS, поэтому у меня есть вопрос.

У меня есть API, который возвращает человека и количество его детей. Теперь у меня есть другой API, называемый сведениями о лицах, и я называю его так:

loadChildren(event) {
    const Id = event.target.id

    fetch('pathtoapi'+Id)
      .then(response => {
        if (!response.ok) {
          throw Error("Network request failed")
        }

        return response
      })
      .then(d => d.json())
      .then(d => {
        this.setState({
          children: d,
          open: true
        })
      }, () => {
        this.setState({
          loadFailed: true
        })
      })
  }

Я получаю необходимый идентификатор, имея это:

<div id = {person.Id} onClick = {this.loadChildren.bind(this) } >

Но я не могу получить список детей для каждого человека для отображения. Я перепробовал почти все, что мог придумать. Например:

 <div id = "demo" className = {"collapse" + (this.state.open ? ' in' : '')}>
                    <div>
                      this.state.children.map((children) => {
        return(
          <div className = "table-body">
            <div className = "table-row" key = {children}>
              <div className = "table-body-cell">
                {children.Name}
              </div>
              <div className = "table-body-cell">
                {children.YearOfBirth}
              </div>
              <div className = "table-body-cell">
                {children.Mother}
              </div>
            </div>
            </div>
        )
      })}
                    </div>
                  </div>

Но это не работает. Может ли кто-нибудь указать мне в правильном направлении, как решить эту проблему?

Я добавил ссылку на jsonblob для людей API и один для perondetails API

https://jsonblob.com/99f030d1-3838-11e9-8243-7f6a93786593

https://jsonblob.com/ccf6055e-3838-11e9-8243-f3a84e9c6252

Любая помощь высоко ценится

Вы получаете какую-либо ошибку. Вероятно, вы не инициализируете дочернее состояние пустым массивом в конструкторе.

Shubham Khatri 24.02.2019 14:43

Кажется, когда я расширяю его, он не получает правильный API. Таким образом, он возвращает пустой объект. Есть ли способ, где я могу получить выборку и переключение одновременно?

Patrick Ziebell Thøgersen 24.02.2019 15:00

Этот пост поможет вам решить проблему, stackoverflow.com/questions/41509532/…. Причина в том, что изначально дочерние элементы не будут определены до тех пор, пока вызов API не будет успешным.

Shubham Khatri 24.02.2019 15:03

Спасибо! Это помогло!

Patrick Ziebell Thøgersen 24.02.2019 15:21

Рад, что это помогло. Отметьте это как дубликат. Подумайте о голосовании за посты на SO, которые помогут вам

Shubham Khatri 24.02.2019 15:33
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Массив зависимостей в React
Массив зависимостей в React
Все о массиве Dependency и его связи с useEffect.
0
5
19
0

Другие вопросы по теме