mermaid之序列圖

mermaid中的序列圖

1. 句法規則

  1. 參與者:

    隱式定義:角色的順序按照定義順序呈現

    sequenceDiagram
    Alice ->> John:Hello john,how are you?
    John -->> Alice:Great!

    AliceJohnHello john,how are you?Great!AliceJohn

    也可以顯式的定義角色的順序

    sequenceDiagram
    participant John
    participant Alice
    Alice ->> John: Hello John, how are you?
    John -->> Alice: Great!

    JohnAliceHello John, how are you?Great!JohnAlice
  2. 別名:可以爲角色定義別名(別名在前)

    sequenceDiagram
    participant J as John
    participant A as Alice
    A ->> J: Hello John, how are you?
    J -->> A: Great!

    JohnAliceHello John, how are you?Great!JohnAlice

2. 消息

  1. 目前支持六種類型的箭頭:

    類型 描述
    -> 無箭頭實線
    –> 無箭頭虛線
    ->> 帶箭頭實線
    –>> 帶箭頭虛線
    -X(或x) 帶箭頭實線末端有×
    –X(或x) 帶箭頭虛線末端有×

3. 激活

  1. 角色可以選擇激活或停用,可以以專用聲明決定是否激活

    sequenceDiagram
    Alice ->> John : Hello John, how are you?
    activate John
    John -->> Alice: Great!
    deactivate John

    AliceJohnHello John, how are you?Great!AliceJohn
  2. 還可以在箭頭上附加+/-作爲快捷表示方法

    sequenceDiagram
    Alice ->>+ John : Hello John, how are you?
    John -->>- Alice: Great!

    AliceJohnHello John, how are you?Great!AliceJohn
  3. 同一個角色可以多次激活

    sequenceDiagram
    Alice ->>+ John: Hello John, how are you?
    Alice ->>+ John: John, can you hear me?
    John -->>- Alice: Hi Alice, I can hear you!
    John -->>- Alice: I feel great!

    AliceJohnHello John, how are you?John, can you hear me?Hi Alice, I can hear you!I feel great!AliceJohn

4. 註釋

  1. 序列圖可以添加註釋,格式爲:N(n)ote [right of | left of | over][Actor]

    sequenceDiagram
    participant John
    Note right of John: Text in note

    JohnText in noteJohn
  2. 也可以創建跨越兩個角色的筆記

    sequenceDiagram
    Alice -> John: Hello John, how are you?
    Note over Alice, John: A typical interaction

    AliceJohnHello John, how are you?A typical interactionAliceJohn

5. 循環

  1. 可以在序列圖中實現用符號表示的循環

    loop Loop-text

    示例:

    sequenceDiagram
    Alice->John: Hello John, how are you?
    loop Every minute
    John–>Alice: Great!
    end

    AliceJohnHello John, how are you?Great!loop[ Every minute ]AliceJohn

6. 備選路徑

  1. 可以在序列圖中實現用符號表示的備選路徑

    alt Describing text
    … statements …
    else
    … statements …
    end

    或者如果還有序列是可選的

    opt Describing-text
    … statements …
    end

    示例:

    AliceBobHello Bob, how are you?Not so good :(Feeling fresh like a daisyalt[ is sick ][ is well ]Thanks for askingopt[ Extra response ]AliceBob

7. CSS樣式

Markdown不支持。

8. 組態

Markdown不支持。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章