子流

子流是将一组节点折叠成工作区中的单个节点。

它们可以用于降低流的一些视觉复杂性,或者将一组节点打包成可重用的流,用于多个地方。

创建后,子流会添加到可用节点的调色板中。然后,子流的各个实例可以像任何其他节点一样添加到工作区中。

注意:子流不能包含自身的实例——无论是直接还是间接。

创建空子流

可以通过选择菜单中的“子流 -> 创建子流”选项来创建子流。这将创建一个空白子流并在工作区中打开它。

参考
快捷键
菜单选项子流 -> 创建子流
操作core:create-subflow

将节点转换为子流

也可以通过选择菜单中的“子流 -> 选择转换为子流”选项,将当前选定的节点转换为子流。这些节点将被移动到一个新的子流中,并在流中替换为一个子流实例节点。

Creating a subflow

创建子流

Invalid subflow selection

无效的子流选择

这只有在进入所选节点的任何连线都连接到一个节点时才可能实现——因为生成的子流节点本身最多只能有一个输入。


参考
快捷键
菜单选项子流 -> 选择转换为子流
操作core:convert-to-subflow

编辑子流

有两种方法可以打开子流来编辑其内容。要么双击调色板中的子流节点,要么单击子流实例节点的编辑对话框中的“编辑流模板”按钮。

子流会在工作区中作为新选项卡打开。与常规流选项卡不同,子流选项卡可以关闭以将其隐藏。

Editing a subflow

编辑子流

输入和输出

子流的输入和输出由灰色方块节点表示,可以像正常一样连接到流中。

工具栏提供了添加和删除这些节点的选项。与普通流节点一样,最多可以有一个输入和任意数量的输出。

状态节点

工具栏提供了一个选项,可以为子流添加一个“状态”输出。这可以用于更新子流实例节点的状态。该节点使用 msg.payload 的输入,该输入可以是简单的字符串或状态对象

编辑子流属性

“编辑属性”按钮会打开子流属性对话框。与流属性对话框一样,可以设置子流的名称和描述。

  • : 属性 - 在子流中作为环境变量公开的每个实例属性。
  • : 模块属性 - 关于子流的元数据。 自 Node-RED 1.3 起
  • : 描述 - 使用 Markdown 格式编写的每个节点文档。当选择节点时,此内容会显示在信息侧边栏中。
  • : 外观 - 自定义节点外观的选项。
Subflow edit dialog - properties Subflow edit dialog - module properties Subflow edit dialog - description Subflow edit dialog - appearance

子流编辑对话框 - 属性、模块属性、描述和外观选项卡

属性
Editing subflow properties

编辑子流属性

Editing subflow property UI

编辑子流属性UI

编辑对话框的“属性”选项卡可用于定义一组属性,然后可以为子流的每个实例自定义这些属性。这些属性随后在子流中作为环境变量公开。

属性表中的每个条目都可以展开,以自定义在编辑子流实例时其显示方式。“UI 预览”选项卡提供了它们将如何显示的预览。


模块属性

模块属性选项卡可用于设置有关子流的其他元数据,包括版本、许可证和模块名称。这些可以在将子流打包为 npm 模块时使用。

外观

“外观”选项卡提供了以下选项:

  • 更改节点所在的调色板类别
  • 选择是否显示节点的标签
  • 更改节点的颜色
  • 更改节点的图标
  • 提供自定义端口标签。

删除子流

子流工具栏中的“删除子流”按钮可用于删除子流及其所有实例。