自定义事件异常排查流程
自定义事件异常场景
自定义事件配置完成后(自定义事件的配置过程,可查看👉自定义事件,对照梳理查看是否配置过程有误),出现不符合预期的交互情形或者其他异常情况,难以定位发生的自定义事件执行情况时。
排查流程
1.定位自定义事件异常的对应组件
排查自定义事件异常情况,首先要定位发生异常的自定义组件,以及它的上下游组件,从而梳理清晰自定义事件的配置流程。可以通过在编辑页内定位异常组件,也可直接在节点管理中定位异常组件及其上下游组件。
1)在编辑页内,定位异常组件。
通常有闪电⚡️图标的即为配置了自定义事件的组件,可通过异常场景定位触发了自定义事件的一系列上下游组件。(可在交互配置中项中查看其在「动作」中配置的下游组件。)注:勿遗漏中间组件的梳理(例如利用数据容器作为中间组件处理数据关系等)
2)在节点管理中,定位组件查看详情
step1: 打开节点管理
在自定义事件异常场景所在应用的编辑页内,点击节点管理(节点管理作为自定义事件的维护工具,参与自定义事件的组件都会以节点的形式在节点管理呈现)——节点管理的教程,可查看👉节点管理)
也可以在工作台首页找到自定义事件异常场景的所在应用,然后打开节点管理。
2.定位自定义事件异常的对应组件
在节点管理中,找到自定义事件异常的对应组件,并查看组件上下游的自定义事件配置情况。可初步检测是否是自定义事件的配置错误。
查看节点管理-自定义事件列表
也可在画布中选中,进入编辑页内,再查看比对配置项情况。屏很复杂的情况可跳转并独显。
2.查看组件配置情况是否有误/组件响应过慢
梳理定位了异常组件后,可初步检测是否为组件本身的配置问题或者响应过慢的问题。
1)排查组件配置情况是否有误
可检测是否是组件样式配置等的问题,导致自定义事件没有如期显示。例如,样式里为未上传图片,或者将组件隐藏等异常情况。
2)排查是否为组件响应过慢
当组件内部结构比较复杂时(例如3D组件等),可能会导致配置完成后,没有如期响应的情况。此时,可在调试模式中监听组件查看日志中是否响应成功,若响应成功,说明配置无误,等加载完成即可。
注:导致响应不成功的问题还可能是「中间组件」响应过慢或者中间组件出现了问题→可排查是否有中间组件的阻隔。
3.排查是否为自动模式影响
什么是自动模式?
⌈自动模式⌋ 为自定义事件的隐性逻辑。
自动模式:当不满足配置的条件时,反向执行自定义事件的动作
例如:
数据容器_1配置了自定义事件,当请求完成或数据变化时,满足配置的【自定义条件】时,隐藏组件A。
那么当数据容器_1请求完成或数据变化时,不满足配置的【自定义条件】,显示组件A 。(即反向执行
反向执行动作:
【显示】【隐藏】
【隐藏】-【显示】
【显隐切换】-【显隐切换】
【移动】-【重置移动】
【旋转】-【重置移动】
【缩放】-【重置缩放】
【更新组件配置】-【重置组件配置】
4.梳理排查自定义事件各个配置项是否有误
方式一:监听相关事件,调试模式查看详情
在节点管理中定位组件后,若初步检测未发现异常,可选择监听事件,并前往调试模式查看详情。调试模式教程👉调试模式
调试模式会输出与之相关的自定义事件执行情况,可在控制台进行查看。通过查看自定义的事件类型
条件状态以及动作配置字段的详细配置情况,可进行全面且清晰的问题排查。
方式二:在编辑页内对自定义事件的配置项进行一一排查
一个完整的交互事件由事件类型+条件+组件+动作4部分组成,可在自定义事件配置中进行逐一排查。
1)事件类型
不同组件的事件类型存在差异,选错了事件类型,往往会导致自定义事件配置后无法如期显示。
下面针对几种常用的事件类型及其使用场景进行具体说明,可对照排查是否选错了事件类型。
- 当请求完成或数据变化时
指请求完成或者数据变化之后,系统将执行后续操作。例如,当数值发生改变,或者达到阈值时,触发相应的自定义事件,此时需要选择事件类型为【当请求完成或数据变化时】。如下图,当消缺率≥80%(数据变化)的时候,单值占比图颜色变为红色,并且触发了告警弹窗(触发自定义事件)。
- 鼠标点击
指通过点击鼠标,触发相应的自定义事件。例如通过点击选项卡,切换不同的状态或者页面等等。
- 状态改变
状态改变通常包含以下几种情况:1.鼠标点击 2. 组件轮播 3.组件联动 ,当出现以上几种情况时,且满足配置条件时,系统将执行后续操作。(注:通常在交互组件(选项卡等)中比较常用,如果自定义事件出现异常,可以排查事件类型是否选择正确)
2)条件
若条件类型为字段:
- 需要排查字段是否匹配正确。
一般情况下,组件的字段条件都可在「数据」中 查看参照,进行字段名和预期值的填写。 (注:「多选选项卡」等多选情况的设置条件比较特殊,传入的字段值是一个选中状态的数组中的元素,【0】即数组中的第一个元素的状态,通过判断它的true或false进行事件处理。具体教程可见👉多选选项卡
- 也可尝试在自定义条件中写代码进行条件设置。
若用字段进行条件设置,没有排查出问题,也可尝试用自定义条件进行代码书写。
若条件类型为自定义条件
可以console.log ,点击预览后在控制台查看数据情况。(console.log:前端开发者可以在js代码的任何部分调console.log,然后你就可以在浏览器的开发者控制台里,看到这个函数调用的那一瞬间你指定的变量或表达式的值)
控制台可在开发者工具中打开
可进行具体详情查看👇并进行问题排查
3)组件
- 选择组件时,注意检查可能出现控制的组件名称出现重复的情况,导致选错了组件。
4)动作
- 需要排查动作是否与组件显示逻辑冲突
例如配置让组件显示,结果自己把组件隐藏了,这个时候需要开启显示。
- 排查动作需要接收的数据是否正确
部分动作所需要接收的数据:return 值应为目标地图的adcode。同样,也可console.log,点击预览后在控制台查看数据情况。
- 注意延时时间的合理配置
如遇其他使用问题,可扫描下方二维码,获取更多产品支持~