Bootstrap

tab页切换时Echarts图未显示

点击tab切换按钮进到页面时,echarts柱状图并未展示。以为数据有问题,但打印options之后,发属性options已经赋值完毕。于是看页面元素,发现外层div 高度为0px,宽度是100px。如图。

   由于我的echarts大小是自适应宽高的,在tab切换前,echarts已经渲染完毕,但页面dom并没有加载完成,所以echarts无法获取自适应宽高。

    所以,我就给组件加了个判断,当切换到echarts图所在的tab页时,再加载echarts组件,就不存在dom未加载完成的问题了。

<el-tabs
  v-model="activeTagName"
  @tab-click="handleTabClick"
>
  <el-tab-pane
    label="记录"
    name="record"
  >
    <stack-chart
      v-if="activeTagName === 'workRecord'"
      :data="data"
      @change="change"
    />
  </el-tab-pane>
</el-tabs>

;