Я относительно новичок в React, и это мой первый пост здесь, поэтому я постараюсь рассказать об этом хорошо.У меня проблемы с доступом к данным JSON.Я проанализировал эти данные из XML, чтобы передать данные об инвентаризации на создаваемую мной страницу.Этот скриншот покажет вам, как выглядит мой массив, к которому я пытаюсь получить доступ.«result.NewDataSet.Table» будет консоль журнала следующего.[Json Object, с которым я работаю] [1]
Мой главный вопрос в том, что у меня установлено 2 состояния.Один из них - "postsRendering", а другой - "postsNotRendering".
Если бы я мог, я бы хотел, чтобы вышеуказанный JSON был установлен в качестве моего состояния.Это прекрасно работает, но когда я пытаюсь его отобразить, я получаю сообщение об ошибке, что моя следующая нотационная точка не существует.В идеале я хотел бы получить доступ к этому состоянию, а затем .map каждый элемент для отображения результатов, которые я хочу.Вот что внутри item [0] (видно в postsRendering [0]) [свойства каждого отдельного объекта] [2]
TL; DR Я могу получить доступ к каждому отдельному объекту json, но хочу получить доступвсю таблицу, чтобы я мог просматривать определенные свойства каждого объекта, который я хочу (так как я работаю с инвентарем).Почему у меня работает "postsRendering", а не "postsNotRendering"
Спасибо, и я надеюсь, что у меня есть смысл!
componentDidMount() {
axios.get('http://webservices.myapi.com')
.then(xmlData => {
this.setState({posts: xmlData.data });
xmlData = xmlData.data;
})
}
componentDidUpdate() {
//The code in here is unnecessary but basically it parsed the XML data into my JSON and then I set the response's state below
this.setState({
postsRendering: result.NewDataSet.Table[0],
postsNotRendering: result.NewDataSet.Table,
});
console.log("final state after parse", this.state.posts)
})
})
}
render() {
return (
<div>
<SingleProduct itemDesc={this.state.postsRendering.CATID}/>
<SingleProduct itemDesc={this.state.postsNotRendering[0].CATID}/>
<SingleProduct/>
</div>
[1]: https://i.stack.imgur.com/U1hAX.png
[2]: https://i.stack.imgur.com/bHKzl.png