动作组

动作组 - 图1

更新时间:2024-05-22 11:14:05
文档 动作 事件

动作(名称与参数)表

动作名称 动作说明 动作参数 动作参数说明 调用动作组 在事件面板在选择并调用其他动作组。 -/- 设置返回结果 为当前动作组设置返回参数并使当前动作组结束。 事件

事件表

事件名称 事件说明 事件参数 事件参数说明 动作开始 开始执行动作组内的动作。 属性·动作·事件
功能概述
动作组组件位于编辑器右侧,和事件、动作组同列。

动作组由多个动作构成,包含一系列目标对象及目标动作。动作组对项目中重复出现的逻辑进行打包,通过调用动作组来实现对复杂逻辑的调用,可以有效的降低项目复杂度,增强项目的易维护性。

合理规划动作组的打包层级,可以使事件主逻辑更加清晰,增强项目逻辑的可读性。
如下图所示,将微信登录和获取赋值用户信息的这一组逻辑放在名为“微信登录”的动作组内:
动作组 - 图2
该动作组可以在前台初始化以及其他事件触发时被调用:
动作组 - 图3
基本用法
1.无参数的动作组
这是动作组最基础的用法,将成组复用的多个动作封装到一个动作组内,不接收参数,也不返回参数。
例如对一个页面进行初始化的所有动作,包括获取时间、清空各个输入框、重置数据等:
动作组 - 图4
2.带参数的动作组
如果动作组内-涉及了数据计算,可以将原始数据作为“接收参数”传入到动作组中,将计算结果作为“返回参数”在动作组结束时进行返回
例如将Unix时间戳-转化为可以日常使用的时间格式,时间戳作为接收参数,处理完成后的日期和时间作为返回参数:
动作组 - 图5
在“当前动作组-设置返回结果”中进行了赋值的返回参数,可以在动作组的回调中被引用:
动作组 - 图6
同步动作组与异步动作组
函数组件类似,动作组的调用方式也分为同步调用和异步调用两种。 同步调用时,动作组后面的动作块-会等待当前动作组执行完毕后再执行; 异步调用时,后面的动作块会在当前动作组开始执行后便执行。异步调用动作组可以避免后序动作块被当前动作组阻塞。
动作组 - 图7
下面通过一个实例来对比动作组同步、异步调用的差别。
Step1 组件的添加
前台目录下添加一个按钮组件、两个动作组,给按钮组件添加事件。添加后的对象树如下:
动作组 - 图8
Step2 同步动作组的编辑
让同步动作组-直接返回字符串“同步动作组”, 打开动作组面板最上端的“同步”开关,如下图所示:
动作组 - 图9
Step3 异步动作组的编辑
异步动作组等待两秒钟后-返回字符串“异步动作组”, “同步”开关保持关闭,如下图所示:
动作组 - 图10
Step4 事件逻辑的编辑
按下图所示:编写按钮的点击事件
动作组 - 图11
异步动作组-将不会阻塞其后“同步动作组”和“应用系统”两个动作块的执行,异步动作组返回的字符串将最后被打印, 以下是点击后浏览器Console中的打印效果:
动作组 - 图12
多次返回与中断
通常情况下,动作组内部只需要一个“设置返回结果”语句,一般在动作组的末尾,返回后即停止 当动作组内部有多个返回语句时,同步调用的动作组在第一次执行了某个返回语句后会中断,而异步调用的动作组则会继续执行所有满足条件的返回语句。 动作组的这个特性与函数组件类似,开发者需合理利用这个特性,以满足不同应用场景的需求。
1.同步调用的动作组
下图所示编写动作组逻辑,打开动作组面板最上端的“同步”开关,则第一次循环时的循环次数“0”被返回后,动作组即中断:
动作组 - 图13
2.异步调用的动作组
如果关闭上图中的“同步”开关,则动作组依次返回“0”,“1”,“2”和“10”。
动作组示意demo:预览效果下载地址