Markdown 链接
有两种添加页面链接的方式:通过 URL 路径 和 文件路径。
- [URL path to another document](./installation)
- [file path to another document](./installation.mdx)
URL 路径不会被 Docusaurus 处理,你可以将它们视为直接渲染为 <a href="./installation">
,即它们将根据页面的 URL 位置解析,而不是其文件系统位置。
如果你想引用由同一插件包含的另一个 Markdown 文件,你可以使用你想要链接的文档的相对路径。Docusaurus 的 Markdown 加载器会将文件路径转换为目标文件的 URL 路径(并因此移除 .md
扩展名)。
例如,如果你在 docs/folder/doc1.md
中,并且想要引用 docs/folder/doc2.md
、docs/folder/subfolder/doc3.md
和 docs/otherFolder/doc4.md
docs/folder/doc1.md
I am referencing a [document](doc2.mdx).
Reference to another [document in a subfolder](subfolder/doc3.mdx).
[Relative document](../otherFolder/doc4.mdx) referencing works as well.
相对文件路径是根据当前文件所在目录解析的。而绝对文件路径则是相对于内容根目录解析的,通常是 docs/
、blog/
或像 i18n/zh-Hans/plugin-content-docs/current
这样的本地化路径。
绝对文件路径也可以是相对于站点目录的。但是,请注意以 /docs/
或 /blog/
开头的链接是不可移植的,因为如果你创建新的文档版本或对其进行本地化,你需要手动更新它们。
You can write [links](/otherFolder/doc4.mdx) relative to the content root (`/docs/`).
You can also write [links](/docs/otherFolder/doc4.mdx) relative to the site directory, but it's not recommended.
使用相对文件路径(带有 .md
扩展名)而非相对 URL 链接具有以下优势:
- 链接将在 GitHub 界面和许多 Markdown 编辑器中保持正常工作
- 你可以自定义文件的 slug 而无需更新所有链接
- 在文件夹中移动文件可以被你的编辑器跟踪,并且某些编辑器可能会自动更新文件链接
- 一个版本化的文档将链接到完全相同版本的另一个文档
- 如果你更新
trailingSlash
配置,相对 URL 链接很可能失效
警告
Markdown 文件引用仅在源文件和目标文件由同一插件实例处理时有效。这是我们 Markdown 处理架构的技术限制,将来会修复。如果你在插件之间链接文件(例如,从博客文章链接到文档页面),你必须使用 URL 链接。