最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue中設置echarts寬度自適應的代碼步驟

 更新時間:2022年09月17日 08:25:10   作者:水冗水孚  
這篇文章主要介紹了vue中設置echarts寬度自適應的問題及解決方案,常常需要做到echarts圖表的自適應,一般是根據(jù)頁面的寬度做對應的適應,本文記錄一下設置echarts圖表的自適應的步驟,需要的朋友可以參考下

問題描述

我們使用vue做項目的時候,常常需要做到echarts圖表的自適應,一般是根據(jù)頁面的寬度做對應的適應。本文記錄一下設置echarts圖表的自適應的步驟。我們先看一下沒有做echarts自適應的效果

無自適應效果圖

我們發(fā)現(xiàn)echarts圖的寬度并沒有隨著頁面寬度的變化而變化

有自適應效果圖

很顯然,這個才是我們想要的效果

代碼步驟

echart圖表本身提供了一個resize的函數(shù),我們只需要監(jiān)聽頁面的resize變化以后,去執(zhí)行echarts的resize方法即可重繪canvas,從而實現(xiàn)對應自適應效果。請看代碼中的注釋步驟

<template>
  <div id="echart"></div>
</template>

<script>
// 第一步,引入echarts插件以供使用
import Echarts from "echarts";
export default {
  data() {
    return {
      myChart: null, // 定義變量用來存放echarts實例
      option: { // 配置項寫在data里面方便管理
        title: {
          text: "ECharts 示例",
        },
        tooltip: {},
        xAxis: {
          data: ["襯衫", "羊毛衫", "雪紡衫", "褲子", "高跟鞋", "襪子"],
        },
        yAxis: {},
        series: [
          {
            name: "銷量",
            type: "bar",
            data: [5, 20, 36, 10, 10, 20],
          },
        ],
      },
    };
  },
  mounted() {
    // 第二步,在頁面加載渲染的時候執(zhí)行echarts畫圖方法
    this.drawEcharts();
  },
  methods: {
    drawEcharts() {
      // 第三步,通過echarts的init方法實例化一個echarts對象myChart,并,保存在data變量中
      this.myChart = Echarts.init(document.getElementById("echart"));
      // 第四步,執(zhí)行myChart的setOption方法去畫圖,當然至于配置項,我們要提前配置好,這里的配置項
      //         寫在data中,方便我們在一些事件中去修改對應配置項,比如點擊按鈕更改配置項數(shù)據(jù)
      this.myChart.setOption(this.option);
      // 第五步,在頁面初始化加載的時候綁定頁面resize事件監(jiān)聽。補充resize事件:resize事件是在瀏覽器窗口大小改變時,會觸發(fā)。
      //        如當用戶調整窗口大小,或者最大化、最小化、恢復窗口大小顯示時觸發(fā) resize 事件。
      //        我們一般使用這個事件去做窗口大小與對應元素的大小適配
      window.addEventListener("resize", () => {
        // 第六步,執(zhí)行echarts自帶的resize方法,即可做到讓echarts圖表自適應
        this.myChart.resize();
        // 如果有多個echarts,就在這里執(zhí)行多個echarts實例的resize方法,不過一般要做組件化開發(fā),即一個.vue文件只會放置一個echarts實例
        /*
        this.myChart2.resize();
        this.myChart3.resize();
        ......
        */
      });
    },
    beforeDestroy() {
      /* 頁面組件銷毀的時候,別忘了移除綁定的監(jiān)聽resize事件,否則的話,多渲染幾次
      容易導致內存泄漏和額外CPU或GPU占用哦*/
      window.removeEventListener("resize", () => {
        this.myChart.resize();
      });
    },
  },
};
</script>

<style lang="less" scoped>
#echart {
  width: 100%;
  height: 600px;
}
</style>

到此這篇關于vue中設置echarts寬度自適應的問題及解決方案的文章就介紹到這了,更多相關vue 寬度自適應內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論

炉霍县| 鄱阳县| 金沙县| 新安县| 本溪| 新河县| 成安县| 揭阳市| 潜山县| 天台县| 漳州市| 望江县| 宽甸| 锦屏县| 河南省| 江口县| 铁岭市| 永定县| 瑞昌市| 新野县| 临汾市| 福鼎市| 盐亭县| 大兴区| 崇左市| 广州市| 吴川市| 龙海市| 广丰县| 富平县| 宁都县| 洛扎县| 湖南省| 海盐县| 台江县| 濮阳市| 瑞金市| 九江县| 方山县| 南江县| 当涂县|