5

在 PlantUML 中,在序列图中添加激活线可能非常麻烦。有没有办法让它在没有所有额外文本的情况下自动激活和停用?

例如

生成没有激活线的序列图

@startuml

First -> Second
Second -> Third
Third -> Second
Second ->  First

@enduml

在此处输入图像描述

但是要添加激活线,它会变得非常混乱

@startuml

First -> Second : message
activate First
activate Second
Second -> Third: message
activate Third
Third -> Second: response
deactivate Third
Second ->  First: response
deactivate First
deactivate Second

@enduml

在此处输入图像描述

我想知道是否有可能让它自动检测可能的创建销毁点

4

1 回答 1

11

是(2017 年)开启自动激活;该语法仍处于孵化阶段,但它已经成为发行版的一部分已有一段时间了。

请注意,在所有情况下,您仍然需要手动激活第一个,因为没有传入消息。

紧凑的语法

如果您想保持对(停用)激活的控制,您可以在同一行用++和符号表示激活/停用以激活目标。--

activate First
First -> Second ++ : message12
Second -> Third ++ : message23
Third -> Second -- : response32
Second ->  First -- : response21
deactivate First

在此处输入图像描述

自动激活

使用您的原始描述,您会很快发现您需要正确地描述您的线路作为回报,否则您将激活广告恶心。

autoactivate on
activate First
First -> Second
Second -> Third
Third --> Second
Second --> First
deactivate First

在此处输入图像描述

于 2017-07-14T13:45:29.137 回答