欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

自适应 vue-charts 图表

最编程 2024-04-10 21:36:13
...
 <div class="box">
    <div class="header"></div>
    <div class="chart-wrapper">
      <v-charts :option="option" ref="echarts"></v-charts>
    </div>
  </div>
<style lang="scss">
.box{
  height: 80%;
  display: flex;
  flex-direction: column;
  .header{
    flex:1
  }
  .chart-wrapper{
    flex:1
  }
}
</style>

此时只有box中存在高度80%,header和chart-wrapper都是弹性布局平分box。但是v-charts无法渲染图表高度,导致图表无法展示出来。如下图:
在这里插入图片描述
注意:x-vue-echarts这个盒子的高度是准确的,但是它的子标签canvas的高度却为0,导致图表无法显示。
在这里插入图片描述
解决办法:

mounted() {
    this.$nextTick(() => {
      this.$refs.echarts.resize();
    });
  },

困扰了2小时的问题,没想到3行代码就解决了!!!!