【发布时间】:2019-11-28 15:51:38
【问题描述】:
我不断收到这个TypeError: undefined is not an object (evaluating 'rss.items[i].title') 错误。但是,当我运行console.log(this.state.feed) 时,它运行良好。谁能指出我做错了什么?
state = {
feed: {}
}
fetchRSSFeed() {
return fetch('http://www.nasa.gov/rss/dyn/breaking_news.rss')
.then((response) => response.text())
.then((responseData) => rssParser.parse(responseData))
.then((rss) => {
for(let i = 0; i < 5; i++) {
this.setState(prevState => ({
...prevState,
feed: rss.items[i].title
}))
})
}
}
render() {
{this.fetchRSSFeed()}
// console.log(this.state.feed); // Console log here works. It logs out all the feed title
MyStories = [{
pic: require('../assets/images/news.jpg'),
title: Object.keys(this.state.feed).map(k => this.state.feed[k]),
caption: 'caption'
}]
return (
<SafeAreaView style={styles.container}>
<Swiper
cards={MyStories}
renderCard={Card}
infinite
backgroundColor="white"
cardHorizontalMargin={0}
stackSize={2}
/>
</SafeAreaView>
)
}
}
【问题讨论】:
-
你在哪里调用控制台日志?也在构造器内部获取?在 componentDidMount()、componentDidUpdate() 或 useEffect() 中尝试
标签: react-native rss typeerror expo rss-reader