我有一张我用作背景图片的本地图片。它在内容的其余部分后加载大约一秒钟。


 < Image source = {require('./ assets / climbing_mountain.jpeg')} style = {styles.imageContainer}> 

 imageContainer:{
 flex:1,
 width:null,
 height:null,
}



 有没有办法在加载图片后加载内容?我尝试使用 onLoad 和 onLoadEnd 道具,但是他们在之前被解雇了图片加载。

答案 0 :(得分:1)
是的,实际上不是那么简单,你需要使用Image prefetch ..查看此链接:React Image prefetch
或者实际上你可以试试这个:
<Image
onLoadEnd={()=>this.setState({loadEnd:true})}
source={require('./assets/climbing_mountain.jpeg')}
style={styles.imageContainer}>
在渲染方法中你可以做一些我不太推荐的事情:
render(){
if(!this.state.loadEnd) {
return(
<Image
key='image_key'
onLoadEnd={()=>this.setState({loadEnd:true})}
source={require('./assets/climbing_mountain.jpeg')}
style={styles.imageContainer}>
)
}else {
return (
<View>
....
<Image
key='image_key'
onLoadEnd={()=>this.setState({loadEnd:true})}
source={require('./assets/climbing_mountain.jpeg')}
style={styles.imageContainer}>
</view>
....
)
}
}