欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

antV 事件多次触发问题,解绑

程序员文章站 2022-04-21 21:38:38
...

由于最近刚刚接触 antV - 数据可视化,对于他的事件应用还比较陌生,在应用中莫名其妙多次调用,想了很多方式如节流……,但是没有用。

业务介绍

antV 事件多次触发问题,解绑antV 事件多次触发问题,解绑

antV 事件多次触发问题,解绑
antV 事件多次触发问题,解绑
当我点击流程图中的某一项进行提示,每次双击都会递增调用。

解决过程

当时想着用节流的方式,但是很遗憾,他还是疯狂递增调用。然后我就开始 debugger 了,发现 on 绑定的事件中走了多次。 on不是原生js绑定事件嘛,我要做的就是每次断开事件绑定,这样,每次就只会走一次。

解决方法

on前面 加上 .off(‘node:dblclick’) 进行解绑

 this.flowpath.off('node:dblclick').on('node:dblclick', ({
          e,
          cell,
          view
        }) => {
          //将展开的一维数组flatRoutes 与 当前点击的值进行判断,并进行路由跳转
          if(this.flatRoutes && this.flatRoutes.length>0){
            //业务
            }else{
              this.$message.error('无菜单可跳转');    
            }
          }
        })