Mermaid短代码使用指南
Mermaid 是一个帮助您从文本生成图表和流程图的库,其方式类似于Markdown。
只需将您的Mermaid代码插入到 mermaid
短代码中即可。
流程图示例
{{< mermaid align="left" >}}
graph LR;
A[硬边] -->|链接文本| B(圆边)
B --> C{决策}
C -->|一| D[结果一]
C -->|二| E[结果二]
{{< /mermaid >}}
渲染为
graph LR;
A[硬边] -->|链接文本| B(圆边)
B --> C{决策}
C -->|一| D[结果一]
C -->|二| E[结果二]
序列图示例
{{< mermaid >}}
sequenceDiagram
participant 爱丽丝
participant 鲍勃
爱丽丝->>约翰: 约翰你好,你怎么样?
loop 健康检查
约翰->约翰: 对抗疑病症
end
Note right of 约翰: 理性思考 <br/>占上风...
约翰-->爱丽丝: 太棒了!
约翰->鲍勃: 你呢?
鲍勃-->约翰: 非常好!
{{< /mermaid >}}
渲染为
sequenceDiagram
participant 爱丽丝
participant 鲍勃
爱丽丝->>约翰: 约翰你好,你怎么样?
loop 健康检查
约翰->约翰: 对抗疑病症
end
Note right of 约翰: 理性思考
占上风... 约翰-->爱丽丝: 太棒了! 约翰->鲍勃: 你呢? 鲍勃-->约翰: 非常好!
占上风... 约翰-->爱丽丝: 太棒了! 约翰->鲍勃: 你呢? 鲍勃-->约翰: 非常好!
甘特图示例
{{< mermaid >}}
gantt
dateFormat YYYY-MM-DD
title 为Mermaid添加甘特图功能
section A部分
已完成任务 :done, des1, 2014-01-06,2014-01-08
活动任务 :active, des2, 2014-01-09, 3d
未来任务 : des3, after des2, 5d
未来任务2 : des4, after des3, 5d
section 关键任务
关键线中已完成任务 :crit, done, 2014-01-06,24h
实现解析器和jison :crit, done, after des1, 2d
为解析器创建测试 :crit, active, 3d
关键线中未来任务 :crit, 5d
为渲染器创建测试 :2d
添加到mermaid :1d
{{< /mermaid >}}
渲染为
gantt
dateFormat YYYY-MM-DD
title 为Mermaid添加甘特图功能
section A部分
已完成任务 :done, des1, 2014-01-06,2014-01-08
活动任务 :active, des2, 2014-01-09, 3d
未来任务 : des3, after des2, 5d
未来任务2 : des4, after des3, 5d
section 关键任务
关键线中已完成任务 :crit, done, 2014-01-06,24h
实现解析器和jison :crit, done, after des1, 2d
为解析器创建测试 :crit, active, 3d
关键线中未来任务 :crit, 5d
为渲染器创建测试 :2d
添加到mermaid :1d
类图示例
{{< mermaid >}}
classDiagram
Class01 <|-- AveryLongClass : 酷
Class03 *-- Class04
Class05 o-- Class06
Class07 .. Class08
Class09 --> C2 : 我在哪里?
Class09 --* C3
Class09 --|> Class07
Class07 : equals()
Class07 : Object[] elementData
Class01 : size()
Class01 : int chimp
Class01 : int gorilla
Class08 <--> C2: 酷标签
{{< /mermaid >}}
渲染为
classDiagram
Class01 <|-- AveryLongClass : 酷
Class03 *-- Class04
Class05 o-- Class06
Class07 .. Class08
Class09 --> C2 : 我在哪里?
Class09 --* C3
Class09 --|> Class07
Class07 : equals()
Class07 : Object[] elementData
Class01 : size()
Class01 : int chimp
Class01 : int gorilla
Class08 <--> C2: 酷标签
Git示例
{{< mermaid >}}
gitGraph
commit
commit
branch develop
checkout develop
commit
commit
checkout main
merge develop
commit
commit
{{< /mermaid >}}
渲染为
gitGraph
commit
commit
branch develop
checkout develop
commit
commit
checkout main
merge develop
commit
commit
状态图
{{< mermaid >}}
stateDiagram-v2
open: 开门
closed: 关门
locked: 锁门
open --> closed: 关
closed --> locked: 锁
locked --> closed: 解锁
closed --> open: 开
{{< /mermaid >}}
渲染为
stateDiagram-v2
open: 开门
closed: 关门
locked: 锁门
open --> closed: 关
closed --> locked: 锁
locked --> closed: 解锁
closed --> open: 开
最佳实践与注意事项
- 所有短代码必须包裹在
div
容器中以确保响应式布局 - 使用
align
参数控制图表对齐方式(left/center/right) - 复杂图表建议添加
theme
参数指定样式 - 若出现渲染异常,检查Mermaid版本是否≥8.8.0
技术实现细节
{{< mermaid theme="neutral" >}}
<!-- 此处插入Mermaid代码 -->
{{< /mermaid >}}
对应的HTML结构为:
|
|