Как я могу предварительно загрузить изображения для использования в группе перехода
У меня есть transition-group
содержащий два или более изображений. Это работает, но теперь я хочу предварительно загрузить следующее изображение в строке.
Вот что у меня есть сейчас:
<template>
<transition-group name="fade" tag="div">
<div v-for="i in [currentIndex]" :key="i" class="absolute inset-0">
<img :src="currentImg" class="object-center object-cover w-full h-full" rel="preload" />
</div>
</transition-group>
</template>
Каждый раз, когда я обновляю currentIndex
, currentImg
вычисляется, так что это работает. Теперь мне нужно предварительно загрузитьcurrentIndex + 1
образ. Это возможно?
1 ответ
Если вы хотите предварительно загрузить изображение, вы можете предварительно инициализировать изображение в JavaScript, которое не смонтировано в DOM:
var preloadingImg = new Image;
preloadingImg.src = "/path/to/img.jpg"; // replace string with img source of [currentIndex + 1]
// optional callback when it's loaded:
preloadingImg.onload = function(event) {
// ...
}
Пока браузер сохраняет изображение в кеше, ссылка на источник больше не запрашивается.
(Удаление переменной не влияет на кеш изображения.)