Oryx
Docusaurus 支持 Markdown 以及一些扩展功能。
前置元数据
Markdown 文档顶部的元数据称为 Front Matter:
my-doc.md
---
id: my-doc-id
title: 我的文档标题
description: 我的文档描述
slug: /my-custom-url
---
Markdown 内容
标题
Markdown 使用标准的“#”语法表示标题,标题会自动加入目录。# 的数量对应标题级别。
## 标题
我的文字
标题 ID
在标题文字后添加 {/* #my-custom-id */},可以为标题指定用于链接的锚点 ID。
### 标题 ID {/_ #my-custom-id _/}
链接
可以使用 URL 路径或相对文件路径编写普通 Markdown 链接。
让我们看看如何[创建页面](/create-a-page)。
让我们看看如何[创建页面](./create-a-page.mdx)。
结果: 让我们看看如何创建页面。
图片
支持普通 Markdown 图片。
可以使用绝对路径引用静态目录中的图片(static/img/docusaurus.png):

也可以使用相对当前文件的路径引用图片。这种方式特别适合把图片和 Markdown 文件放在一起:

代码块
Markdown 代码块支持语法高亮。
```jsx title="src/components/HelloDocusaurus.js"
function HelloDocusaurus() {
return <h1>你好,Docusaurus!</h1>;
}
```
src/components/HelloDocusaurus.js
function HelloDocusaurus() {
return <h1>你好,Docusaurus!</h1>;
}
提示框
Docusaurus 提供特殊语法来创建提示框和醒目提示:
:::tip[我的提示]
使用这个很棒的功能选项
:::
:::danger[请小心]
这个操作很危险
:::
我的提示
使用这个很棒的功能选项
请小心
这个操作很危险
MDX 与 React 组件
MDX 可以让文档更具交互性,并允许在 Markdown 中使用任意 React 组件:
export const Highlight = ({children, color}) => (
<span
style={{
backgroundColor: color,
borderRadius: '20px',
color: '#fff',
padding: '10px',
cursor: 'pointer',
}}
onClick={() => {
alert(`你点击了颜色 ${color},标签为 ${children}`)
}}>
{children}
</span>
);
这是 <Highlight color="#25c2a0">Docusaurus 绿色</Highlight>!
这是 <Highlight color="#1877F2">Facebook 蓝色</Highlight>!
这是 Docusaurus 绿色!
这是 Facebook 蓝色!