Skip to content

运行时 API

运行时层负责把 wrapper HTML 升级成可交互的图表壳层

入口函数

initMermaidIt(root?)

查找尚未挂载的 wrapper,并完成首次挂载

ts
import { initMermaidIt } from 'markdown-it-mermaid-enhanced/runtime'

await initMermaidIt(document.querySelector('#app')!)

rerenderMermaidIt(root?)

重新读取现有 wrapper 的配置与源码,然后原地刷新

ts
import { rerenderMermaidIt } from 'markdown-it-mermaid-enhanced/runtime'

await rerenderMermaidIt(document.querySelector('#app')!)

initWrapper(wrapper)

直接挂载或刷新单个 wrapper,适合自定义宿主里的局部生命周期控制

导出辅助函数

运行时模块还会导出几组更底层的 helper

函数作用
downloadSvg保存当前 SVG
downloadPng光栅化并保存 PNG
copyToClipboard复制图表源码
toggleFullscreen调用浏览器全屏 API
convertMermaidToExcalidraw单独执行 Mermaid 转 Excalidraw
createPanZoom创建缩放与拖拽控制器

运行时行为备注

  • 已挂载 wrapper 会进入缓存并复用
  • 已脱离文档流的 wrapper 会自动清理
  • 纯配置刷新会原地重渲染,并保留当前 SVG 节点
  • 当前运行时模型下,纯配置刷新也会保留缩放状态