React native React Native-平面列表不调用renderItem';基于刷新的生命周期方法
每次刷新列表时,我想在React native React Native-平面列表不调用renderItem';基于刷新的生命周期方法,react-native,react-native-android,react-native-flatlist,React Native,React Native Android,React Native Flatlist,每次刷新列表时,我想在renderItem的componentDidMount方法中发出一个获取请求,但是FlatList只调用生命周期方法一次 名单 <FlatList data={this.state.dataSource} renderItem={({item}) => <ListItem imageHref={item.imageHref} />} keyExtractor={(item, index) => inde
renderItem
的componentDidMount
方法中发出一个获取请求,但是FlatList
只调用生命周期方法一次
名单
<FlatList data={this.state.dataSource}
renderItem={({item}) => <ListItem imageHref={item.imageHref} />}
keyExtractor={(item, index) => index.toString()}
refreshing={this.state.refreshing}
onRefresh={/* Fetching data from JSON and updating dataSource[] */} />
我尝试在render
方法中调用fetch
,但也不起作用
我基本上希望每次刷新列表时,
imageSource
都会更新。请帮助。因为列表项未更改。您必须在onRefresh
中获取新图标并将其传递到ListItem
中,然后当ListView刷新时,所有数据都将更改。。。如果您想在列表项中执行此操作,您需要与该特定项进行一些交互,例如,一些按钮,如果用户按下此按钮,则获取并更改图标,我不知道列表何时刷新,但您可以尝试此this.forceUpdate()
您可以在此处了解更多信息不,不是这样。我多次更改JSON数据并进行刷新,但它从未多次调用componentDidMount。
render() {
return <Image source={this.state.imageSource} />
}
componentDidMount() {
fetch(this.props.imageHref)
.then(response => {
if(response.status !== 200)
this.setState({imageSource: require('../assets/default-image.png')
else
this.setState({imageSource: {uri: this.props.imageHref}});
}
});
}