popover弹窗中显示Echarts图表

最近做一个数据治理的可视化项目,其中有一个需求是鼠标悬浮于某个div元素,需显示弹窗展示图表,如图所示:
在这里插入图片描述
问题:

  • 在开始渲染图表时,canvas画布显示的图表大小为固定小正方形无法调节尺寸,设置图表宽高不起作用,且图表无数据;

解决:

  • 通过查阅资料分析,原因是element UI组件popover弹窗还没完全展开时,echarts的图表便已经开始渲染,获取不到popover弹窗尺寸图表的渲染也就出现问题;
  • 在popover的@after-enter方法中调用插入图表的方法,在此方法中调用获取图表等数据的接口,区分渲染先后顺序。after-enter方法是popover显示动画播放完毕后触发,这时弹窗显示之后canvas画布的图表渲染也都没有问题了。
 <el-popover
     popper-class="popover_style"
     placement="right-start"
     width="600"
     trigger="hover"
     :key="index"
     @after-enter="setChartLine(id)"
     @hide="cancelChartLine()"
   > </el-popover>

after-enter 显示动画播放完毕后触发
hide 隐藏时触发

猜你喜欢

转载自blog.csdn.net/weixin_42132439/article/details/123176787