Milimoe Docs
首页
  • FunGame
  • Oshima
  • RainBOT
GitHub
首页
  • FunGame
  • Oshima
  • RainBOT
GitHub
  • 前言介绍

前言介绍

在 VuePress 中,Frontmatter 是每个 Markdown 文件顶部的 YAML 或 JSON 格式的数据块,用于配置页面的元数据和一些特定功能。以下是对 VuePress 中 Frontmatter 配置的详细总结:

1. 标题和描述

设置页面的标题和描述,有助于 SEO 和社交分享:

---
title: 页面标题
description: 这是一段页面描述
---

2. 路径和重定向

配置页面的自定义路径或设置重定向:

---
permalink: /custom-path/
redirect_from:
  - /old-path/
---

3. 导航和侧边栏

侧边栏

配置页面的侧边栏:

---
sidebar: 'heading'  # 自动生成侧边栏
sidebar: false  # 禁用侧边栏
sidebarDepth: 2  # 侧边栏标题深度
---

目录

是否在页面中显示目录:

---
toc: true  # 显示目录
---

4. 布局和组件

布局

指定页面的布局:

---
layout: LayoutName
---

组件

启用或禁用页面的某些组件:

---
navbar: false  # 禁用导航栏
footer: false  # 禁用页脚
---

5. Meta 标签

为页面添加自定义 meta 标签:

---
head:
  - - meta
    - name: keywords
      content: vuepress, docs
  - - meta
    - name: author
      content: YourName
---

6. 自定义 CSS 和 JS

在页面中添加自定义的 CSS 或 JS:

---
styles:
  - /path/to/custom.css
scripts:
  - /path/to/custom.js
---

7. 显示和状态

状态标签

为页面设置状态标签,如草稿、发布等:

---
status: draft
---

版权信息

设置页面的版权信息:

---
copyright: © 2024 YourName
---

8. 多语言支持

设置页面的语言信息:

---
lang: en-US
---

9. 自定义 Frontmatter

添加自定义的 Frontmatter 字段,以便在模板或组件中使用:

---
customField: customValue
---

综合示例

---
title: My Page Title
description: This is a detailed description of my page.
permalink: /custom-path/
redirect_from:
  - /old-path/
sidebar: 'heading'
sidebarDepth: 2
toc: true
layout: CustomLayout
navbar: false
footer: false
head:
  - - meta
    - name: keywords
      content: vuepress, docs
  - - meta
    - name: author
      content: YourName
styles:
  - /styles/custom.css
scripts:
  - /scripts/custom.js
status: draft
copyright: © 2024 YourName
lang: en-US
customField: customValue
---

上下页导航

在 VuePress 中,使用 Frontmatter 配置上一页和下一页导航,可以帮助读者更轻松地浏览文档。可以通过以下方式设置:

上一篇和下一篇导航配置

使用 Frontmatter 中的 prev 和 next 字段来指定上一页和下一页。

示例

在 Markdown 文件中设置 prev 和 next 字段:

---
title: 当前页面标题
prev: /path/to/previous-page
next: /path/to/next-page
---

例如:

---
title: 第二章
prev: /chapter-1/
next: /chapter-3/
---

这样,在页面底部会自动生成指向前一篇和后一篇的链接。

自动生成上一篇和下一篇

如果不手动配置 prev 和 next,VuePress 会自动根据目录结构生成这些导航链接。确保你的文档按照正确的顺序组织在文件夹中,并且在 .vuepress/config.js 中配置好侧边栏:

module.exports = {
  themeConfig: {
    sidebar: [
      {
        text: '章节',
        children: [
          '/chapter-1.md',
          '/chapter-2.md',
          '/chapter-3.md',
        ],
      },
    ],
  },
};

自定义组件

你也可以自定义上一页和下一页导航组件。创建一个自定义组件并在模板中使用:

<template>
  <div class="navigation-links">
    <router-link v-if="$page.frontmatter.prev" :to="$page.frontmatter.prev">上一页</router-link>
    <router-link v-if="$page.frontmatter.next" :to="$page.frontmatter.next">下一页</router-link>
  </div>
</template>

<script>
export default {
  computed: {
    prev() {
      return this.$page.frontmatter.prev;
    },
    next() {
      return this.$page.frontmatter.next;
    },
  },
};
</script>

将这个组件放在页面模板中,确保导航链接按预期显示。

总结

在 VuePress 中,Frontmatter 配置为每个页面提供了丰富的定制选项。通过配置标题、描述、路径、侧边栏、布局、组件、自定义 meta 标签、CSS 和 JS、多语言支持等,你可以灵活地控制每个页面的呈现方式和功能。这使得 VuePress 在创建结构化文档和技术文档时变得非常强大和易用。

在 GitHub 上编辑此页
Last Updated:
Contributors: milimoe
Prev
VuePress 帮助
Next
启用 GitHub 关联