7、Markdown 链接
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 编辑器上继续有效
- 你可以自定义文件的 slugs,而无需更新所有链接
- 你的编辑器可以跟踪在文件夹中移动文件,并且某些编辑器可能会自动更新文件链接
- 版本化文档 将链接到完全相同版本的另一个文档
- 如果你更新
trailingSlash
配置,相对 URL 链接很可能会损坏
注意
仅当源文件和目标文件由同一插件实例处理时,Markdown 文件引用才有效。这是我们 Markdown 处理架构的技术限制,将来会修复。如果你要在插件之间链接文件(例如从博客文章链接到文档页面),则必须使用 URL 链接。