Skip to content

Mermaid 图表工具

用于渲染交互式 Mermaid 图表,对齐 @ant-design/x Mermaid

何时使用

  • 需要在应用中渲染支持缩放、平移、图片/代码双视图切换的交互式 Mermaid 图表。
  • 可与 Markdown / 对话内容组合展示模型输出的流程图、时序图等。

代码演示

基本

基础用法。

自定义 Header

通过 header 自定义顶部内容。

Login Flow

Header Actions

配置缩放、下载、复制与自定义操作。

Header Actions Configuration

API

MermaidProps

属性说明类型默认值
children图表代码内容(也可通过默认插槽传入)string-
header顶部内容;为 null 时不显示头部VNode | string | (() => VNode | string | null) | null-
highlightProps透传给代码视图中 CodeHighlighter 的配置object-
configMermaid 配置项MermaidConfig-
actions操作栏配置{ enableZoom?: boolean; enableDownload?: boolean; enableCopy?: boolean; customActions?: ActionItem[] }{ enableZoom: true, enableDownload: true, enableCopy: true }
onRenderTypeChange渲染类型切换回调(value: 'image' | 'code') => void-
classNames语义化结构 classNameRecord<'root' | 'header' | 'graph' | 'code', string>-
styles语义化结构 styleRecord<'root' | 'header' | 'graph' | 'code', CSSProperties>-

MermaidSlots

插槽名说明
default图表代码内容
header自定义头部

FAQ

使用 config 时如何避免重复初始化?

请保证 config 引用稳定,避免在模板中直接写对象字面量。推荐用 computed / 常量缓存:

ts
const config = computed(() => ({
  theme: isDark.value ? 'dark' : 'base',
  fontFamily: 'monospace',
}));

贡献者

贡献者

正在加载贡献者信息...