Markdown 链接
有两种方法可以向另一个页面添加链接:通过**URL 路径**和**文件路径**。
- [URL path to another document](./installation)
- [file path to another document](./installation.mdx)
Docusaurus 不会处理 URL 路径,您可以将其视为直接渲染到<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 链接。