我正在使用React VR进行虚拟旅行,并在用户从房间运输时预加载下一张全景图像。在预加载后,我将使用本地磁盘缓存中的映像。
我已尝试过以下代码
<Pano style={{ display: 'none' }} source={asset(`360/${this.thePanoImage}`)} />
但是下面的图片没有看到。
红线上方是第一次加载虚拟游览时。您会看到leefruimte.jpg
在9毫秒内下载。运输(在红线下)后,再次下载leefruimte.jpg
,但现在在12毫秒内。
我接受图像leefruimte.jpg
是从场景零中加载的图像中取出并缓存的。
图片navigationCircle.png
和focusspot.png
也不会被预加载。
答案 0 :(得分:2)
注意:这很可能在将来发生变化,但在撰写本文时,您可以查看Prefetch组件。
Prefetch当时仅适用于Panos,但看起来它足以满足您当前的需求。
import {Prefetch} from 'react-vr';
...
...
render() {
return (
...
<Prefetch key={someUniqueKey} source={asset(`360/${this.thePanoImage}`)} />
...
);
}
加载图片时, Pano
source code检查Prefetch
的缓存。因此,当您尝试为Pano
加载this.thePanoImage
时,图片应该在缓存中可用,并且不会再次获取。