# 触发器

连接上游组件和下游组件的中间节点。在组件与组件的连线上可以添加 触发器 ,在 触发器 中可以关联两端组件的路由配置。

# 基本信息

特性 说明
是否支持添加多个 ✔️
是否有配置项 ✔️

# 函数参数

详见『函数/参数说明』

# 函数返回值

触发器支持返回普通布尔值或 Promise (opens new window) 以便于处理异步操作。

  • 返回布尔值:

    1. return true 执行下一步操作
    2. return false 阻止下一步操作
  • 返回 Promise4.2+

    return new Promise(function (resolve) {
      // 处理逻辑...
    
      // 使用 resolve(true) 或 resolve(false) 返回结果
      return resolve(true);
    });
    

返回 false 后,则该组件的点击事件不生效。

# 示例

TIP

有 2 个通用标题:【修改】、【显示时间】。

点击【修改】后,将【显示时间】内容改为当前时间。

当点击 3 次后,禁止修改。

# 1. 大屏设计器内容

大屏设计器内容

大屏设计器内容

# 2. 节点编程配置

节点编程

节点编程配置

【触发器 1】内容:

// 获取本地变量 `count`,若无,则默认为 0
var count = HETU.getLocalVar("count") || 0;
return count < 3;

【转换器 1】内容:

return [{ title: new Date().toLocaleString() }];

【转换器 2】内容:

// 获取本地变量 `count`,若无,则默认为 0
var count = HETU.getLocalVar("count") || 0;

// 将 count 值加 1 后返回
return { count: count + 1 };

【转换器 1】内容:

var count = HETU.getLocalVar("count");
return [{ title: "点击修改时间 (" + count + ") 次" }];

TIP

节点编程含义:

每次点击【修改】时,通过【触发器 1】判断临时变量 count 的值,

count 小于 3,则:

  1. 通过【转换器 1】修改【显示时间】的内容为当前时间;
  2. 通过【转换器 2】更新 count 值(加 1)。

当临时变量变更后,通过【转换器 3】触发【修改】的「导入数据接口」动作,显示当前 count 的值。

# 3. 结果预览

预览

3 次后,点击无效

Last Updated: 3/29/2023, 2:40:19 PM