什么情况下Echarts路径下的index.js文件的require部分会被自动修改?

新手上路,请多包涵

问题描述

昨天生产环境突然出现echarts的组件调用失败的情况。排查后发现,那部分组件的代码在加载的时候抛出series.tree is not exit.Load it first的异常

问题出现的环境背景及自己尝试过哪些方法

在排查问题的时候发现,在版本分支上旧版本的git仓库中,echarts/lib/chart/tree的目录都“不见了”,另外每个版本中echarts/index.js中require("./lib/chart/tree")的代码都“不见了”,直接添加后发现,关于tree组件初始化的参数丢失了,该env参数存在的文件多达40多个

对于series.tree is not exit.Load it first的异常通过网上的一些建议:
1、修改import 直接导入"echarts"(本来就是)
2、分开导入组件
3、查看series的参数
上述方法都没有效果
4、用最新的echarts进行覆盖(问题解决)

可是这问题很神奇啊
神奇的地方:
为什么突然关于这个被调用的组件会被底层会被统一修改?
新版本代码上线旧版本的该部分代码居然也会受影响?
不同开发环境的服务器部分有受到影响
内网开发的情况下,只能通过覆盖去修复代码也太不友好了

相关代码

下面是部分echarts/index.js的部分代码

require("./lib/component/dataset");

require("./lib/chart/line");

require("./lib/chart/bar");

require("./lib/chart/pie");

require("./lib/chart/scatter");

require("./lib/chart/radar");

require("./lib/chart/map");

下面这行丢失了

require("./lib/chart/tree");

require("./lib/chart/treemap");

require("./lib/chart/graph");

require("./lib/chart/gauge");

require("./lib/chart/funnel");

require("./lib/chart/parallel");

require("./lib/chart/sankey");

require("./lib/chart/boxplot");

你期待的结果是什么?实际看到的错误信息又是什么?

什么条件会触发这种情况的发生?

下面的异常的照片
图片描述

阅读 1.6k
1 个回答

我觉得只能用凌晨三点有黑影偷偷摸摸的打开电脑删掉这行传git库来回答了。

可能是你们公司谁处理冲突的时候误操作了吧。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题