Я очень новичок в React Native, Networking и Programming в целом.Я пытаюсь получить данные JSON из Reddit для приложения, которое я создаю, но я получаю сообщения об ошибках при попытке получить доступ к объектам данных.Ниже приведен код, который я использую для получения и консольного журнала этих данных.
componentDidMount(){
fetch ('https://www.reddit.com/r/financialindependence.json')
.then(res => res.json())
.then(data => {
this.setState({
data: data
})
})
.catch( error => {
console.error(error)
})
}
render() {
const myData = this.state.data
if (myData !== undefined) {
console.log(myData)
}
return(
<View style = {styles.container}>
<MainDrawerHeader title = 'Links' />
<Text> This is the Links Screen </Text>
</View>
)
}
}
Это работает и регистрирует консоль следующим образом.
[16:54:41] Object {
[16:54:41] "data": Object {
[16:54:41] "after": "t3_9ysab7",
[16:54:41] "before": null,
[16:54:41] "children": Array [
[16:54:41] Object {
[16:54:41] "data": Object {
[16:54:41] "approved_at_utc": null,
[16:54:41] "approved_by": null,
[16:54:41] "archived": true,
[16:54:41] "author": "Omitted For Privacy",
И когда я получаю доступ к myData.data, он также работает
[16:59:29] Object {
[16:59:29] "after": "t3_9ysab7",
[16:59:29] "before": null,
[16:59:29] "children": Array [
[16:59:29] Object {
[16:59:29] "data": Object {
[16:59:29] "approved_at_utc": null,
Нокогда я пытаюсь получить доступ ко второму вложенному объекту («после», «до» или «потомкам» (и так как потомки - это массив, я пытался получить доступ к первому элементу), я получаю следующую ошибку:
[17:00:39] TypeError: TypeError: TypeError:
undefined is not an object (evaluating 'myData.data.after')
Что смущает меня, потому что я пытался поймать неопределенный объект с помощью своего оператора if. Любые советы, не знаю, куда идти. Спасибо