Я хочу сделать запрос выборки внутри 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[] */} />
Внутри ListItem
компонента:
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}});
}
});
}
Я пытался вызвать fetch
внутри render
метода, но это тоже не сработало.
Я в основном хочу imageSource
обновлять при каждом обновлении списка. Пожалуйста, помогите.