• echarts 点击事件,区分 target 是图形还是 label 时遇到的问题


    本文地址:  https://www.cnblogs.com/veinyin/p/15639531.html

    "vue": "^2.6.11"、"echarts": "^5.2.1"、"vue-echarts": "^6.0.0"
    写这篇随笔时,echarts 发布了 '5.2.2'
     
    需求:
    环形图,如下图,点击圆环时响应点击事件,点击 label Line 或 label 时不处理
     

    原开发方案:

    onChartClick 接收了一个参数 params,在开发环境 params.event.target 可查看被点击元素

    params.event.target.__proto__.constructor.name 可以得到构造函数名,对应关系:PiePiece-饼图 TSpan-label

    为 PiePiece 时去执行一系列即可,事实证明开发环境和测试环境均达到了预期效果

    问题出现:

    今天周五,下午的时候在群里收到了后端的@,代码已经在预生产,但点击无响应了,下周一下班时要上线

    我人疯了啊,同一套代码换了个环境,功能崩了

    定位:

    1、对比与生产和测试两个分支代码差异,这里补充个 git 命令,git diff pre-prod test,很好用,但完全没有差异

    2、把本地的 node_modules 文件夹删了,重新装了一遍依赖,担心是版本更新导致的,毕竟之前 vue3 的项目被版本问题坑过,结果跟版本毫无关系

    3、开始怀疑自己,打了个日志,提交到预生产了。进了函数,但判断 PiePiece 时出现了问题,取到的是 t,跟构造函数没有瓜葛的东西, 导致一直进不了 if 块

    解决:

    修改判断方式,查看了下 params 的差异,label 的 params.event.target.style.text 是有值的,label Line 和 PiePiece 没有

    这样存在一个小问题,点连接线也会响应,暂时这样实现,问题先搁置

    有空了再看看下怎么改比较好,到时来更新,上线时间弄的我毫无心情细究,因为还有个其他的问题在等着,也只在预生产能复现,啊啊啊啊啊啊啊 痛苦

    本文地址:https://www.cnblogs.com/veinyin/p/15639531.html

    感谢您的阅读及指正,让我们一起进步。
    欢迎联系我交流:veinyin@gmail.com
    作者:yuhui_yin
    博客地址:https://www.cnblogs.com/veinyin/
    如转载请注明出处。
  • 相关阅读:
    Java 线程安全与锁优化
    Linux内常用的BASH命令
    Java导出CSV用MS Office Excel打开乱码问题一招制胜办法
    素数个数求解与素数的判定
    Java 线程间的通信wait(), notify(), join(), ThreadLocal讲解
    Java volatile关键字特性介绍
    项目架构相关
    HTTP POST 请求 及 @RequestParam @RequestPart @RequestBody
    Web安全相关
    Thread和Runable比较
  • 原文地址:https://www.cnblogs.com/veinyin/p/15639531.html
Copyright © 2020-2023  润新知