echart自适应窗口大小、父容器大小

echart的自适应这里用到echartsInstanceresize方法( 改变图表尺寸,在容器大小发生改变时需要手动调用。

自适应窗口

<template>
  <v-chart ref="echart" :options="drawLine(xAxis,markPoint,orderLine)" style="width:100%;height:465px"></v-chart>
</template>
<script>
 mounted() {
    window.addEventListener("resize", this.resizeTheChart);
 },
 beforeDestroy() {
    window.removeEventListener("resize", this.resizeTheChart);
 },
methods:{
 // echart自适应
    resizeTheChart() {
      if (this.$refs.echart) {
        this.$refs.echart.resize();
      }
    }
}
</script>

自适应父容器

当父容器发生变化时候,这时的echart仅适应窗口是没有效果的,这时我们需要给触发父容器变化的方法或者监听变化的变量 然后调用echart自适应方法即可

例:左侧导航栏伸缩时,父容器大小会发生变化,这时我们需要通过vuex获取左侧导航栏的状态,并在当前页面进行监听

computed: {
    ...mapGetters(["sidebar"]),//获取左侧导航栏对象(其中opened为导航栏伸缩属性)
},
watch: {
    "sidebar.opened": {
      handler(nV, oV) {
        const _this = this;
        //加定时器 因为伸缩动画有动画时长,在动画结束后重新渲染echart
        setTimeout(function() {
            _this.$refs.echart.resize();
            console.log("EnergyPlan 全屏执行",index);
          }, 1000);
      }
    }
  },
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 主笔和重心是结字的灵魂。今天来说说书法中的主笔,当然这都是前人的智慧,我只是略做整理。 主笔:字中最主要的笔画,即...
    羲之练字阅读 8,067评论 0 1
  • 早上我们又来到这里——湖边。东东说:“我觉得这里是湖边最美丽的一片了。”“是啊,确实很美。” 远处湖水波光粼粼,七...
    刘月红阅读 260评论 0 2
  • http://www.cnblogs.com/peida/archive/2012/12/10/2810755.h...
    Ten_Minutes阅读 192评论 0 0
  • 看过这样的一个小故事:庭院里种满了花,寒冬来临,万花凋零。小徒弟看见师父若无其事地打扫着落花,哀伤地问:“师父,您...
    最美黎洁阅读 443评论 0 5
  • 作为初期氪金英雄,赵云在王者荣耀中的作用相对来说是比较多功能的,可肉可输出,可以作为刺客型选手登场,在团战中也可以...
    talkyx阅读 305评论 0 0