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

解决el-dialog中使用echarts加载不出图表

程序员文章站 2022-07-14 08:52:22
...

HTML:

<template>
  <el-dialog
    :visible.sync="openGantt"
    width="1200px"
    :append-to-body="true"
    destroy-on-close
    @open="openFun()"
    @close="cancel"
  >
    <div
      id="popupGanttDispatchControl"
      :style="{ height: height, width: width }"
    />
  </el-dialog>
</template>

SCRIPT:

使用 this.$nextTick 方法解决

import echarts from "echarts";
export default {

  data() {
    return {
      chart: null,
    };
  },
  beforeDestroy() {
    if (!this.chart) {
      return;
    }
    this.chart.dispose();
    this.chart = null;
  },
  openFun() {
    //打开加载图表
    this.$nextTick(() => {
      this.initChart();
    });
  },
  initChart(){
      // ...  
  }
}