正文里的链接
在正文里链接到另一个页面时,直接写它的文件路径:
先看[快速开始](../getting-started.mdx)。
分组的写法见[文档树](../concepts/document-tree.mdx#四个函数)。
构建时,minidocs 把它换成页面的地址。这和在 GitHub 或编辑器里浏览 Markdown 时的写法一样,编辑器可以补全路径、跳转到文件。改了 prefix、base 这些配置,链接也不用跟着改。
链接到不存在的文件时,构建会失败:
[minidocs] src/content/docs/zh/guides/sidebar.mdx:12: "../getting-started.md" points to a file that does not exist.
规则
- 只处理以
.md或.mdx结尾的相对路径,扩展名不能省。外部链接、以/开头的地址和#anchor原样保留 - 锚点会保留:
../install.mdx#requirements链接到那个页面的#requirements - 可以链接到另一个用 minidocs 的
glob加载的集合,见多个集合 - 链接到这些集合以外的文件,比如项目根目录的
README.md,构建会失败,因为它没有对应的页面 - 链接到被
filter排除的页面,构建也会失败
多语言站点
链接到同一个语言目录里的文件,就是链接到同一种语言的页面。
一个页面没有翻译、显示的是另一种语言的内容时,它里面的链接仍然指向当前语言的页面,读者不会被带到另一种语言的站点。
想明确链接到另一种语言,就写那种语言目录里的文件:
<!-- zh/guides/deploy.mdx -->
这一节只有英文版:[Deploying](../../en/guides/deploy.mdx)。
限制
- 锚点来自标题文字。一个中文页面里写的
#四个函数,在英文站上如果目标页面已经翻译成英文,标题变成了#four-functions,链接只会停在页面顶部 - 生成的是相对地址。把渲染出的 HTML 用在别处,比如 RSS 的全文,需要自己把它们转成完整的地址
- 开发服务器里,坏链接只在打开那个页面时报错,
.md文件的坏链接只出现在终端里。构建时都会失败