Я использую response-native-image-gallery .В котором URL-адреса этих изображений уже приведены в состояние в массиве images
.Но я хочу динамически загружать эти изображения, которые я извлекаю из API, как показано в коде.Я могу сохранить эти пути в состоянии, но, чтобы показать эти изображения, требуется доменное имя, https://xyz.in/
.На котором я застрял, как я могу показать эти динамически извлеченные изображения.
Пожалуйста, помогите.
код:
constructor(props) {
super(props);
this.state = {
images: [
{ source: { uri: 'http://i.imgur.com/30s12Qj.jpg' } },
{ source: { uri: 'http://i.imgur.com/4A1Q49y.jpg' } },
{ source: { uri: 'http://i.imgur.com/JfVDTF9.jpg' } },
{ source: { uri: 'http://i.imgur.com/Vv4bmwR.jpg' } }
],
fetched_images:[]
};
}
async componentDidMount() {
return fetch(`https://xyz.in/api/shop/username`,
{
method: "GET",
headers: {
'Authorization': `JWT ${DEMO_TOKEN}`
}
})
.then((response) => response.json())
.then((responseJson) => {
this.setState({
fetched_images: responseJson.all_images,
});
})
}
render() {
return (
<View>
<Gallery
style={{ height:300, width:'100%', backgroundColor: '#696969'}}
images={this.state.images}
errorComponent={this.renderError}
onPageSelected={this.onChangeImage}
initialPage={0}
/>
</View>
);
}
jsonданные:
"all_images": [
{
"image": "/media/All%20Product%20Images/20150415_093955_2.jpg"
},
{
"image": "/media/All%20Product%20Images/amshoe.jpg"
},
{
"image": "/media/All%20Product%20Images/ckramii.jpg"
}
]