echarts折线图组件封装

1.开发环境 vue+echarts
2.电脑系统 windows10专业版
3.在应用 vue+echarts开发的过程中,咱们会常常应用到折线图,上面是我对折线图组件的封装,心愿对你有所帮忙!
4.在组件中增加如下代码:

<template>  <div class="zhex">    <div :id="ZhexObj.id"  style="width: 100%; height: 100%"></div>  </div></template><style>html,body {  width: 100%;  height: 100%;  margin: 0;  padding: 0;}.zhex{  width: 100%;  height: 96%;  box-sizing: border-box;  /* border: 2px solid yellow; */}</style><script>import echarts from "echarts";export default {  name: "Zhex",  props: ["ZhexObj"],  data() {    return {      chenda: this.ZhexObj,    };  },  created() {},  mounted() {    this.$nextTick(() => {      let max = this.chenda.max;      let min = this.chenda.min;      let mai = (min + max) / 2 - min;      console.log(this.chenda);      let data=this.chenda.data;      this.tt(max, min, mai, this.chenda.id, this.chenda.title,data);    });  },  watch: {    chenda: {      handler(newValue, oldValue) {        console.log(newValue);        console.log("变动");        console.log(newValue);        let max = newValue.max;        let min = newValue.min;        let mai = (min + max) / 2 - min;        let id = newValue.id;        let title = newValue.title;        console.log(this.chenda);        this.$nextTick(() => {            this.tt(max, min, mai, id, title);        })      },      deep: true,    },  },  methods: {    dataObjfun() {      console.log("产生了变动");      console.log("+++++++++++");    },    // 封装 echarts 画图 一    drawChart(drawChartId, Chenoption) {      this.myChart = echarts.init(document.getElementById(drawChartId));      let option = Chenoption;      // 指定图表的配置项和数据      this.myChart.setOption(option);      window.onresize = function () {        myChart.resize();      };    },    // 封装 echarts 画图一 完结啦    // 封装 echarts 画图二    //留神:进行了封装    tt(max, min, mai, id, title,data) {      //   console.log(max, min, mai, mi);     this.Chenoption = {        title: {          text: title,          left: "center",          textStyle: {            fontSize: 18, //字体大小            color: "#bfbfbf", //字体色彩          },        },        tooltip: {          trigger: "axis",        },        xAxis: {          type: "category",          boundaryGap: false,          show: false,        //   data: ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun", ""],          data: data,        },        yAxis: {          type: "value",          axisLine: {            show: false,          },          min: min,          max: max,          axisLabel: {            show: true,            textStyle: {              color: "#ffffff",            },          },          interval:mai,          splitLine: {            //网格线            lineStyle: {              type: "dashed", //设置网格线类型 dotted:虚线   solid:实线              width: 2,              color:"green"            },            show: true, //暗藏或显示          },        },        series: [          {            // data: [820, 932, 901, 934, 1290, 1330, 1320],            data:data,            type: "line",            showSymbol: true,            symbol: "circle", //设定为实心点            symbolSize: 10, //设定实心点的大小            color: "#00808c", //设定实线点的色彩          },        ],      };      // console.log(this.Chenoption.yAxis.min);      // this.Chenoption.yAxis.interval=(this.Chenoption.yAxis.min+this.Chenoption.yAxis.max)/2;      this.drawChart(id, this.Chenoption);    },    // 封装 echarts 画图二 完结啦  },};</script>

5.在父组件中增加如下代码:

import Zhex from "@/components/Zhex.vue";<Zhex :ZhexObj="chenObj.chenLTObj.kxbr" />

5-1.在return中增加如下代码:

 chenObj: {  chenLTObj: {        kxbr: {                max: 190,                min: -10,                id: "Kxbr",                title: "管制用XBR图",                data: ["10", "30", "50", "88", "77"],                },               }             }

6.效果图如下:

7.本期的分享到了这里就完结啦,是不是很nice,心愿对你有所帮忙,让咱们一起致力走向巅峰!