跳到主要内容

If(条件判断)

使用 If 节点,根据比较操作按条件对工作流进行分支。

添加条件 ​

为 If 节点创建比较 Conditions(条件)。

  • 使用数据类型下拉菜单,选择条件的数据类型和比较操作类型。例如,要筛选某个日期之后的日期,请选择 Date & Time > is after(日期和时间 > 晚于)。
  • 条件中需要输入的字段和值,取决于所选的数据类型和比较方式。按数据类型列出的完整比较列表,请参阅可用的数据类型比较。

选择 Add condition(添加条件)创建更多条件。

组合条件 ​

可选择在以下情况下保留数据:

  • 满足全部条件:创建两个或更多条件,在条件之间的下拉菜单中选择 AND(且)。
  • 满足任意条件:创建两个或更多条件,在条件之间的下拉菜单中选择 OR(或)。

模板与示例 ​

浏览 If(条件判断) 集成模板,或搜索所有模板

If 和 Merge 节点的分支执行 ​

信息

0.236.0 及更早版本

n8n 在 1.0 版本移除了此执行行为。本节适用于采用 v0 (legacy)(v0,旧版)工作流执行顺序的工作流。默认情况下,n8n 1.0 之前构建的所有工作流均采用此顺序。可在工作流设置中更改执行顺序。

向包含 If 节点的工作流添加 Merge 节点,可能导致 If 节点的两个输出数据流都执行。

其中一个数据流触发 Merge 节点,随后 Merge 节点会执行另一个数据流。

例如,下图中的工作流包含 Edit Fields、If 和 Merge 节点。If 节点通常只执行一个数据流,图中为 true(真)输出。但由于 Merge 节点的存在,即使 If 节点没有向 false(假)数据流发送任何数据,两个数据流仍都会执行。

Edit Fields、If 和 Merge 节点按顺序连接的工作流

相关资源 ​

使用条件在 n8n 中创建复杂逻辑的更多信息,请参阅使用条件分支。

如果需要两个以上的条件输出,请使用 Switch 节点。

可用的数据类型比较 ​

String(字符串) ​

字符串类型支持以下比较:

  • exists(存在)
  • does not exist(不存在)
  • is empty(为空)
  • is not empty(不为空)
  • is equal to(等于)
  • is not equal to(不等于)
  • contains(包含)
  • does not contain(不包含)
  • starts with(以指定内容开头)
  • does not start with(不以指定内容开头)
  • ends with(以指定内容结尾)
  • does not end with(不以指定内容结尾)
  • matches regex(匹配正则表达式)
  • does not match regex(不匹配正则表达式)

Number(数字) ​

数字类型支持以下比较:

  • exists(存在)
  • does not exist(不存在)
  • is empty(为空)
  • is not empty(不为空)
  • is equal to(等于)
  • is not equal to(不等于)
  • is greater than(大于)
  • is less than(小于)
  • is greater than or equal to(大于或等于)
  • is less than or equal to(小于或等于)

Date & Time(日期和时间) ​

日期和时间类型支持以下比较:

  • exists(存在)
  • does not exist(不存在)
  • is empty(为空)
  • is not empty(不为空)
  • is equal to(等于)
  • is not equal to(不等于)
  • is after(晚于)
  • is before(早于)
  • is after or equal to(晚于或等于)
  • is before or equal to(早于或等于)

Boolean(布尔值) ​

布尔类型支持以下比较:

  • exists(存在)
  • does not exist(不存在)
  • is empty(为空)
  • is not empty(不为空)
  • is true(为真)
  • is false(为假)
  • is equal to(等于)
  • is not equal to(不等于)

Array(数组) ​

数组类型支持以下比较:

  • exists(存在)
  • does not exist(不存在)
  • is empty(为空)
  • is not empty(不为空)
  • contains(包含)
  • does not contain(不包含)
  • length equal to(长度等于)
  • length not equal to(长度不等于)
  • length greater than(长度大于)
  • length less than(长度小于)
  • length greater than or equal to(长度大于或等于)
  • length less than or equal to(长度小于或等于)

Object(对象) ​

对象类型支持以下比较:

  • exists(存在)
  • does not exist(不存在)
  • is empty(为空)
  • is not empty(不为空)
本文为社区中文翻译。查看对应英文原文