基础语法
声明及指向
# sequenceDiagram: 代指图的类型# participant:参与人(你可以理解为成员,若是有 plantuml 的底子应该一目了然)# ->> 单向带箭头实线指向# -->> 单向带箭头虚线指向sequenceDiagramparticipant 木木participant 花花花花->木木: 木木,你好帅啊!!木木-->花花: 这不是显而易见的么?花花-x 卡布奇诺: 我讨厌你卡布奇诺--x木木: 老子弄死你!
| 指向类型 | 描述 |
|---|---|
| -> | 不带箭头的实线 |
| —> | 不带箭头的虚线 |
| ->> | 带箭头的实线 |
| —>> | 带箭头的虚线 |
| -x | 在结束端显示关闭符号的实线 |
| —x | 在结束端显示关闭符号的虚线 |
角色(参与者)别名
# alias(as)别名,国际通用sequenceDiagramparticipant crper as 木木participant flower as 花花flower->>crper: 木木,你好帅啊!!crper-->>flower: 这不是显而易见的么?
角色激活失效
激活角色可以用activate,+ 修饰符
角色失效可以用deactivate,-修饰符
sequenceDiagram木木->>花花: 早上好,今天天气不错哦!!activate 花花花花 ->> -木木: 睡你的觉去吧,需要你问候么!花花 -->> +木木: 真的睡觉去了?开玩笑的木木 -->> 花花: 凉凉夜色为你思念成河。
备注(备忘录)
若是时序图不能写备注的,表达性就要弱很多了。
支持三个方向:
- Note right of : 右边
- Note left of : 左边
- Note over : 下边
sequenceDiagram木木->>花花: 早上好,今天天气不错哦!!Note left of 木木: 放飞思绪中activate 花花花花 ->> -木木: 睡你的觉去吧,需要你问候么!Note right of 花花: 无语!!!花花 -->> +木木: 真的睡觉去了?开玩笑的Note over 花花: 不会凉了吧。木木 -->> 花花: 凉凉夜色为你思念成河。
循环
爱的魔力转圈圈,爱你三千遍!!
sequenceDiagram木木->>花花: 早上好,今天天气不错哦!!Note left of 木木: 放飞思绪中activate 花花花花 ->> -木木: 睡你的觉去吧,需要你问候么!Note right of 花花: 无语!!!花花 -->> +木木: 真的睡觉去了?开玩笑的Note over 花花: 不会凉了吧。loop 每时每刻木木 -->> 花花: 凉凉夜色为你思念成河。end
条件判断
条件判断和常规的编程语言写法有点差异,可以用来增加表现力
sequenceDiagram木木->>花花: 早上好,今天天气不错哦!!Note left of 木木: 放飞思绪中alt 理想化花花->>木木: 是啊,不错呢?else 现实中花花 ->> 木木: 睡你的觉去吧,需要你问候么!Note right of 花花: 无语!!!endopt 假如时光可以倒流loop 此处默数三千遍木木 -->> 花花: 我不会嘴贱去询问你endend
总结
时序图也支持美化,当然也是用类去修饰 svg 的线条这些。语雀上没法声明临时样式,无解。
不过这种东东用的场景不是很多,我们用图图更多的是想快速表达一些东西。
强迫党自然会死磕,我们随意。
