You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
vitepress/docs/ru/guide/frontmatter.md

3.6 KiB

description
Узнайте, как использовать метаданные YAML в Markdown-файлах VitePress для управления метаданными и поведением на уровне страниц.

Метаданные

Использование

VitePress поддерживает метаданные YAML во всех Markdown-файлах, разбирая их с помощью gray-matter. Метаданные должны находиться в верхней части Markdown-файла (перед любыми элементами, включая теги <script>) и иметь вид корректного YAML, заданного между тройными пунктирными линиями. Пример:

---
title: Документация с VitePress
editLink: true
---

Многие параметры конфигурации сайта или темы по умолчанию имеют соответствующие опции в блоке метаданных. Вы можете использовать метаданные, чтобы переопределить заданное поведение только для текущей страницы. Подробности см. в Справочнике по настройке метаданных.

Вы также можете определить собственные метаданные, которые будут использоваться в динамических выражениях Vue на странице.

Доступ к метаданным

Доступ к метаданным можно получить через специальную глобальную переменную $frontmatter:

Вот пример того, как можно использовать его в файле Markdown:

---
title: Документация с VitePress
editLink: true
---

# {{ $frontmatter.title }}

Содержание руководства

Обращения к свойствам вроде {{ $frontmatter.title }} разрешаются в процессе рендеринга Markdown, поэтому значение также попадает в локальный индекс поиска, в вывод загрузчика контента, в якоря заголовков — заголовок выше получает id="docs-with-vitepress" — и в цели ссылок, записанные без пробелов вокруг выражения, например [text]({{$frontmatter.link}}). Остальные выражения вычисляются Vue во время выполнения как обычно, а обёртывание выражения в v-pre выводит его буквально.

Вы также можете получить доступ к метаданным текущей страницы в <script setup> с помощью хелпера useData().

Альтернативные форматы метаданных

VitePress также поддерживает синтаксис метаданных JSON, начинающийся и заканчивающийся фигурными скобками:

---
{
  "title": "Веду блог как хакер",
  "editLink": true
}
---