我刚刚将我的listView迁移到更快的flatlist列表,目前遇到了带有外部URI的图像没有渲染的问题。如果我使用的是('localuri')一切正常。
1)URL是https2)我看到呈灰色矩形(图像的样式)是渲染的3)使用带有要求的本地图像(LocalImagePath)正在工作4)如果我在浏览器上要求,则imageUrlthumb是有效的
<FlatList
data={this.props.items}
keyExtractor={(item, index) => index}
numColumns={3}
renderItem={rowData => {
return (
<Image
style={{
width: size,
height: size,
margin: 2,
borderWidth: 1,
borderColor: "#eee"
}}
source={{ uri: rowData.imageUrlThumb, cache: "force-cache" }}
resizeMode="contain"
/>
);
}}
/>;
如果有人可以帮助我。
最好的问候凯
环境: 操作系统:Macos High Sierra 10.13 节点:6.11.0 纱线:1.2.1 NPM:5.4.2 守望者:4.9.0
软件包:(想要=>已安装) 反应:16.0.0-beta.5 => 16.0.0-beta.5 反应:https://github.com/expo/react-native/archive/sdk-22.0.1.tar.gz => https://github.com/expo/expo/react-native/archive/archive/sdk-22.0.1.tar.gz
在这一行中:
source={{uri: rowData.imageUrlThumb, cache: 'force-cache'}}
rowData.imageUrlThumb
不确定。
您有renderItem
中的语法错误。
根据flatlist数据结构,您要么必须在渲染中调用rowData.item
,要么在renderItem={({item}) => {
中使用卷曲支架,以表示您将在rowData
对象中使用item
。也就是说,使用(rowData) => rowData.item
或使用({item}) => item
。