我是新手做出反应。我有一个用例,我必须缓存第三方服务器上的图像。(希望避免过多的服务器调用每秒渲染一个图像)为此,我使用 react-native-web < /强>
我的应用程序是一个反应Web应用程序。代码段是:
import { Image } from 'react-native-web';
class ImageComponent extends Component {
componentWillMount() {
const interval = setInterval(() => { this.timer(); }, 2000);
this.setState({ interval });
const urlOfImages = ['https://homepages.cae.wisc.edu/~ece533/images/mountain.png'];
const preFetchTasks = [];
urlOfImages.forEach((url) => {
preFetchTasks.push(Image.prefetch(url));
});
}
render() {
const images = ['https://homepages.cae.wisc.edu/~ece533/images/mountain.png'];
const text = 'something';
return (
<div>
<span>{ text }</span>
<Image source={{ uri: images[0] }} alt="Banner" title="Banner" border="0" />
<Image source={{ uri: images[0] }} alt="Banner" title="Banner" border="0" />
<Image source={{ uri: images[0] }} alt="Banner" title="Banner" border="0" />
<Image source={{ uri: images[0] }} alt="Banner" title="Banner" border="0" />
</div>
);
}
}
通过网络标签,我可以看到只有一个请求从服务器下载图像。这是Image标签所期望的,但是没有一个Image在浏览器上呈现。
任何人都可以直接解决Image标记没有呈现的问题,还是有更好的方法从服务器缓存图像使用react?