【发布时间】:2019-08-20 17:36:03
【问题描述】:
如何在 react native 中显示图像数组?图像使用 URL 并存储在 firestore 数据库中这是它存储在数据库中的确切结构 lodash 用于将用户对象更改为数组 [![数据库结构][1]][1]
Object {
"book": "Robin hood",
"photos": Array [ "https://picsum.photos/id/1001/5616/3744", "https://picsum.photos/id/1002/4312/2868", "https://picsum.photos/id/1003/1181/1772", ],
}
我尝试了这个,但得到错误提示“更新由 RCTImageView 管理的视图的属性“src”时出错 空值 uri 的值不能从 ReadableVativeArray 转换为 String''
return this.props.user.map((details) => {
return (
<View >
<Text>{details.book}</Text>
<Image style={{ width: 350, height: 300 }} source={{ uri: details.photos }} />
</View>
);
});
我也试过了,控制台日志显示了图像 URL 和其他获取的数据,并且显示了图书详细信息,但由于某种原因,图像没有显示在屏幕上
return (
<View style={{ flex: 1 }}>
{this.props.user.map(details => {
details.photos.map((image) => {
console.log(image)
return (
<View>
<Image style={{ width: 350, height: 300 }} source={{ uri: image }} />
</View>
);
})
return (
<View>
<Text style={styles.b}>{details.book}</Text>
</View>
)
})}
</View>
)
[1]: https://i.stack.imgur.com/dLvci.png
【问题讨论】:
-
您正在映射图像,但没有对它们做任何事情。他们正在消失在 JS 领域。
-
User 是一个对象,但您正在使用地图对其进行迭代?
标签: reactjs firebase react-native google-cloud-firestore