自定义事件异常排查流程

自定义事件异常场景

自定义事件配置完成后(自定义事件的配置过程,可查看👉自定义事件,对照梳理查看是否配置过程有误),出现不符合预期的交互情形或者其他异常情况,难以定位发生的自定义事件执行情况时。

排查流程

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,点击预览后在控制台查看数据情况。

  • 注意延时时间的合理配置



如遇其他使用问题,可扫描下方二维码,获取更多产品支持~

400-8505-905复制
免费试用
在线咨询
微信社区
易知微-数据可视化
微信扫一扫入群