在美人鱼序列图中添加盒子/容器

age*_*nis 12 markdown sequence-diagram mermaid

我正在用 Mermaid 制作序列图,我发现这个loop功能非常酷,用以下代码块在循环周围绘制一个带标签的矩形:

sequenceDiagram
    loop Title
        Alice->>Bob: Hello John, how are you?
        Bob->>Alice: Answer
            loop Title
                Bob->>Bob: Thinks
            end
    end
Run Code Online (Sandbox Code Playgroud)

渲染效果如下: 在此输入图像描述

我的问题是:我可以将这个矩形容器元素用于除循环以外的其他用途吗?仅用于对事物进行分组,并将其命名为除“循环”之外的任何我想要的名称(如果我更改关键字,则它不起作用loop)。好像只有‘loop’、‘opt’和‘alt’授权关键字?

Lim*_*ent 6

看起来subgraph就是你想要的:

flowchart TB
    c1-->a2
    subgraph ide1 [one]
    a1-->a2
    end
Run Code Online (Sandbox Code Playgroud)

图片来自 Mermaid 文档

https://mermaid-js.github.io/mermaid/#/flowchart?id=subgraphs

  • 这是“流程图”而不是“序列图”。为什么被接受? (6认同)
  • 不,它仅适用于流程图。 (3认同)

小智 5

您好,也许与您希望的不完全相同,但您可以尝试

sequenceDiagram
    participant Alice
    participant John
    
    rect rgb(191, 223, 255)
   
        Alice->>Bob: Hello John, how are you?
        Bob->>Alice: Answer
            rect rgb(200, 150, 255)
                Bob->>Bob: Thinks
            end
    end
Run Code Online (Sandbox Code Playgroud)

这将创建一个矩形