Вышел Astro 2.10 с улучшениями экспериментальной поддержки View transitions. Также мы выпустили первую раннюю beta Astro 3.0. Читайте дальше!
Если Astro уже установлен, обновитесь до 2.10:
npm install astro@latestpnpm upgrade astro --latestyarn upgrade astro --latestЗаодно обновите интеграции и адаптеры @astrojs/*!
Persistent UI in View Transitions
Первый релиз роутера <ViewTransition /> дал плавные переходы, но stateful islands и элементы всё равно перерисовывались.
В 2.10 добавлена директива transition:persist.
С ней сохраняется состояние DOM-элементов и islands со старой страницы при переходе на новую. Демо.
Чтобы видео продолжало играть при навигации, добавьте transition:persist:
<video controls="" autoplay="" transition:persist> <source src="https://ia804502.us.archive.org/33/items/GoldenGa1939_3/GoldenGa1939_3_512kb.mp4" type="video/mp4" /></video>Элемент <video> с текущим состоянием переносится на следующую страницу (если видео там тоже есть).
То же для client-side framework islands — состояние счётчика сохраняется:
<Counter count={5} client:load transition:persist />First Look at Astro 3.0
Первая beta Astro 3.0 как astro@3.0.0-beta.0. Если готовы к приключениям — попробуйте! Пока в основном deprecations и удаление старых паттернов. Возможны проблемы совместимости и breaking changes. Ранний preview меняется быстро!
Заметные изменения:
- HTML сжимается по умолчанию.
- API routes используют заглавные имена методов:
export function GET() ... - Адаптеры сообщают Astro о поддерживаемых возможностях: split entrypoints per page, Sharp / Squoosh.
Changelog со всеми изменениями. Документации по breaking changes пока нет — работаем над гайдом. К 3.0 будет больше информации.
Release candidate — когда все breaking changes завершены. Стабильный 3.0 — конец августа / начало сентября.
More
В релизе также исправления и функции интеграций. См. release notes.
