Skip to content

Выбор способа ​

Image Kit умеет готовить изображения несколькими способами, и большинство задач можно решить не одним из них. На этой странице перечислено, что делает каждый способ, чтобы вы выбрали подходящий и перешли к готовой конфигурации.

Две разные задачи легко перепутать:

  • Адаптивные варианты — изменение размера исходного изображения до нескольких ширин и форматов (400w, 800w, WebP, AVIF …), чтобы браузер скачивал самый маленький подходящий файл.
  • Плейсхолдеры — крошечный HazeHash, BlurHash, ThumbHash или доминирующий цвет вместе с размером изображения, которые показываются, пока грузится настоящее. Ничего не уменьшается и никакие файлы не пишутся.

Каждую задачу можно решать отдельно или обе вместе. Если проекту нужно только размытие на время загрузки, варианты генерировать не требуется вообще.

Что вам нужно? ​

Способы рядом ​

СпособПишет файлыКогда работаетРаботает с src, собранным в рантаймеЧто нужно
?placeholder (список полей), ?hazehash, ?blurhash, ?color, ?size, ?previewнетсборка / devнет — один импорт на изображениеплагин Vite, sharp
import.meta.glob с ?placeholderнетсборка / devпо имени файлаплагин Vite, sharp
Манифест из dirs / urlsнетсборка / devдаплагин Vite или Nuxt, sharp
Команда placeholdersманифест или ваши шаблоныкогда вы её запускаетес --dir / --urlsharp
Импорт ?vikдасборка / devнетплагин Vite, sharp
Пакетная генерация (generate)дасборка / devда — файлы лежат на дискеплагин Vite или CLI, sharp
Сервер on-demandтолько кешпри каждом запроседасервер Node, sharp

thumbhash нужен везде, где считается ThumbHash. См. Установка.

Как плейсхолдер попадает в <VImage> ​

Любой способ заканчивается одним из трёх путей, и полезно понимать, каким именно вы пользуетесь:

  • Пропсы — значения передаются компоненту напрямую: v-bind="placeholder", :hazehash="hash" или записываются в шаблон командой.
  • Манифест — карта src → плейсхолдер регистрируется один раз, а <VImage> находит свою запись по точной строке src. Никаких пропсов на каждом использовании. См. Манифест плейсхолдеров.
  • Метаданные вариантов — импорт ?vik или сгенерированный манифест несёт плейсхолдер вместе с адресами уменьшенных файлов и передаётся как проп image.

Изображение, импортированное в компонент (import hero from './hero.jpg'), при сборке приложения получает хешированный URL, поэтому поиск в манифесте по src его не найдёт. Для таких изображений используйте пропсы или раздавайте их из папки с постоянным URL.

Рецепты ​

  • Vite и Vue — все конфигурации плагина: от простого размытия до вариантов и манифеста папок вместе.
  • Nuxt — опции модуля и случаи, когда плагин Vite нужно добавлять вручную.
  • CLI, CDN и удалённые изображения — проекты без плагина, CDN-изображения, проверка в CI.