Switch 节点#
使用 Switch 节点可以根据比较操作条件式地路由工作流。它与 IF 节点类似,但支持多个输出路由。
节点参数#
选择节点应使用的模式:
- 规则模式:选择此模式可为每个输出构建匹配规则
- 表达式模式:选择此模式可编写表达式以编程方式返回输出索引
节点配置取决于您选择的模式。
规则模式#
使用以下参数配置此操作模式:
- 创建路由规则来定义比较条件
- 使用数据类型下拉菜单选择条件的数据类型和比较操作类型。例如,要创建特定日期之后的日期规则,选择日期与时间 > 晚于
- 条件中需要输入的字段和值会根据您选择的数据类型和比较操作而变化。完整的数据类型比较列表请参考可用的数据类型比较
- 重命名输出:开启此控件可重命名用于存放匹配数据的输出字段。输入您想要的输出名称
选择添加路由规则可添加更多规则。
规则选项#
您可以通过以下选项进一步配置该节点的操作:
- 回退输出:选择当项目不匹配任何规则或条件时如何路由工作流。
- 无:忽略该项目。这是默认行为。
- 额外输出:将项目发送到一个额外的独立输出。
- 输出0:将项目发送到与第一条规则匹配的输出相同的输出。
- 忽略大小写:设置评估条件时是否忽略字母大小写(开启)或强制执行字母大小写(关闭)。
- 宽松类型验证:设置是否希望n8n根据所选运算符尝试转换值类型(开启)或不转换(关闭)。
- 发送数据到所有匹配输出:设置是否将数据发送到所有满足条件的输出(开启)或仅发送到第一个匹配条件的输出(关闭)。
表达式#
使用以下参数配置该节点的操作:
- 输出数量:设置节点应具有的输出数量。
- 输出索引:创建一个表达式来计算哪个输入项目应路由到哪个输出。该表达式必须返回一个数字。
模板与示例#
相关资源#
有关在n8n中使用条件创建复杂逻辑的更多信息,请参阅使用条件拆分。
可用的数据类型比较#
字符串(String)#
字符串数据类型支持以下比较操作:
- 存在
- 不存在
- 为空
- 不为空
- 等于
- 不等于
- 包含
- 不包含
- 以...开头
- 不以...开头
- 以...结尾
- 不以...结尾
- 匹配正则表达式
- 不匹配正则表达式
数字(Number)#
数字数据类型支持以下比较操作:
- 存在
- 不存在
- 为空
- 不为空
- 等于
- 不等于
- 大于
- 小于
- 大于或等于
- 小于或等于
日期时间(Date & Time)#
日期时间数据类型支持以下比较操作:
- 存在
- 不存在
- 为空
- 不为空
- 等于
- 不等于
- 在...之后
- 在...之前
- 在...之后或等于
- 在...之前或等于
布尔值(Boolean)#
布尔数据类型支持以下比较操作:
- 存在
- 不存在
- 为空
- 不为空
- 为真
- 为假
- 等于
- 不等于
数组(Array)#
数组数据类型支持以下比较操作:
- 存在
- 不存在
- 为空
- 不为空
- 包含
- 不包含
- 长度等于
- 长度不等于
- 长度大于
- 长度小于
- 长度大于或等于
- 长度小于或等于
对象(Object)#
对象数据类型支持以下比较操作:
- 存在
- 不存在
- 为空
- 不为空