Разработчики генератора статических сайтов Astro выпустили версию 4.3. В ней появилась экспериментальная функция конфигурации доменов для i18n, добавили больше контроля над HTML-файлами, а изображения в Markdown теперь можно использовать без идентификатора относительных ссылок.

Основные нововведения Astro 4.3:
-
Для разных доменов или поддоменов можно настроить конфигурацию i18n. К примеру, для
example.ruможно использовать русскоязычную версию сайта, а дляexample.com— англоязычную. Для доступа к функции необходимо активировать экспериментальный флагi18nDomainsи внести изменения в конфигурационный файлastro.config.mjs:
// astro.config.mjs import {defineConfig} from "astro/config" export default defineConfig({ site: "https://example.com", output: "server", // required, with no prerendered pages adapter: node({ mode: 'standalone', }), i18n: { defaultLocaLe: 'en', locales: ['en', 'es', 'pt_BR', 'pt', 'fr'], domains: { fr: "https://fr.example.com", es: "https://example.es" }, routing: { prefixDefaultLocale: true, } }, experimental: { i18nDomains: true }, })
Важно отметить, что функция не будет работать с предварительно созданными страницами. Для этого нужна возможность смены языка на стороне сервера.
-
Исправили использование изображений в Markdown без идентификатора относительных ссылок (
./или../). Теперь можно использовать стандартный синтаксис. Такая конструкция больше не вызывает ошибку. -
В
build.formatпоявилась опцияpreserve, которая даёт больше контроля при сборке проектов. Этот параметр конфигурации сгенерирует HTML-файлы точно так же, как они отображаются в исходной папке. К примеруsrc/pages/about.astroсоздаст/about.html, аsrc/pages/about/index.astro—/about/index.html. -
Теперь Astro поддерживает экспорт из
astro/typesтипаComponentProps, который похож наReact.ComponentPropsили экспортComponentPropsдля Svelte.
--- import type { ComponentProps } from 'astro/types'; import Button from "./Button.astro"; type MyButtonProps = ComponentProps<typeof Button>; ---
ссылка на оригинал статьи https://habr.com/ru/articles/791732/
Добавить комментарий