Skip to content

Image Kit ​

1.7.1 ​

2026-10-07

  • Исправлено: превью теперь ведёт себя в точности как изображение, вместо которого оно показано. Раньше плейсхолдер <VImage> был пустым <span> с инлайн width: 100% и height: auto, поэтому при width: 50%, фиксированной высоте или родителе, сжимающемся по содержимому, он отличался по размеру от загруженной картинки, и вёрстка прыгала при начале загрузки. Теперь это <img> с теми же атрибутами width/height и теми же классами (прозрачное изображение того же размера в src, хеш в фоне), и браузер размеряет его по тем же правилам и тому же CSS, что настоящую картинку. Размер блока не меняется и пока файл скачивается: до прихода первых байт <img> несёт contain-intrinsic-size из своих width×height. Если в тесте или стилях вы искали плейсхолдер как span, ищите img[aria-hidden="true"].

1.7.0 ​

2026-10-07

  • Плейсхолдеры HazeHash — предпочтительные: новый проп hazehash у <VImage> и поле hazehash в SourcePlaceholder, ImageMeta и записях манифеста. Строка в 7–48 байт (по умолчанию 28) из опциональной peer-зависимости hazehash декодируется в размытое превью с правильными пропорциями и альфа-каналом. hazehash побеждает blurhash, thumbhash и placeholder; v-lazy-img и useBackgroundImage() тоже его используют. Пакет подгружается по требованию; без него один раз пишется предупреждение и берётся следующий плейсхолдер.
  • Инструменты сборки умеют делать HazeHash: mode: 'hazehash' для плагина Vite и опции Nuxt, placeholders --mode hazehash, generate --hazehash, импорты ?hazehash и ?placeholder=hazehash.
  • Новая настройка tuning.budget (--budget, &budget= в импорте): размер строки HazeHash в байтах, 7–48, по умолчанию 28.
  • Изменено: режим плейсхолдеров по умолчанию — hazehash, если установлен пакет hazehash, иначе blurhash. Чтобы сохранить BlurHash, задайте mode: 'blurhash'; пакет hazehash нужно установить в приложение, потому что хеши декодирует браузер.