0

所以我有一个 fetch() 调用返回一个在以下代码中标记为数据的背景 url。该 url 是用户上传的图像,并调用我的后端以获取上传的图像。

await fetch(URL3)
  .then(response => response.json())
  .then(data => {
    this.setState({
      userBackground: data,
      loading: false
    });
  });

在我使用 jpeg 文件 (37 kb) 进行此调用后,除了我上传的第一个 jpeg 之外,它不会显示任何其他文件。我尝试过不同大小的 png 和 jpeg 文件。

android上是否有某种类型的图像缓存被激活并且不允许下载另一个图像????

我的 ImageBackground 标记如下:

<ImageBackground
    source={this.state.userBackground === null ? this.state.background : { uri: `${uri}` }}
    style={{ width: '100%', height: '100%' }}
  >
4

1 回答 1

1

React Native 在内部进行图像缓存,要摆脱这种情况,您可以在图像 url 中附加时间戳。例如,

let imageUrl = `${this.state.userBackground}?time=`+new Date(); 
<ImageBackground
source={imageUrl}
style={{ width: '100%', height: '100%' }}
>
于 2018-10-31T19:51:27.967 回答