vike-vue-content

用 frontmatter 控制页面标题、描述、目录与导航元数据。

Frontmatter 与元数据

每篇 Markdown 顶部可以用 YAML frontmatter 声明元数据,控制页面渲染和导航展示。

---
title: 页面标题
description: 页面简短摘要。
navigation:
  label: 侧边栏显示的标题
---

# 正文标题

正文内容……

title 与 description

字段类型默认值说明
titlestring正文第一个 # 一级标题页面标题,用于侧边栏、上下页导航和 <title>
descriptionstring页面描述,显示在页面头部。

title 支持回退,不写时取第一个 H1;description 只有显式声明时才有值。

目录(TOC)

目录会从 Markdown 标题自动生成,无需手动声明。解析后的目录结构作为页面元数据暴露,由 DocsToc 组件渲染:

// ContentEntry.toc
type ContentTocLink = {
  id: string          // 标题锚点 ID
  text: string        // 标题文字
  depth: number       // 标题级别(2 = h2, 3 = h3 …)
  children?: ContentTocLink[]
}

子标题会嵌套进父标题,形成树形目录。

frontmatter 里的 navigation 字段控制这一页在侧边栏导航中的表现:

---
title: 完整页面标题
navigation:
  label: 导航简称
  hidden: false
---
字段类型说明
navigation.labelstring覆盖侧边栏显示文本(不影响页面 title)。
navigation.hiddenboolean设为 true 时从导航中隐藏,但页面仍可访问。

其他自定义字段会作为导航元数据原样保留,供你在自定义导航组件里使用。

排序

排序由文件/目录名上的数字前缀决定,详见内容驱动路由。frontmatter 不参与排序。