溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

vue2.0中怎么自定義Echarts組件

發(fā)布時間:2021-07-21 14:40:59 來源:億速云 閱讀:123 作者:Leah 欄目:web開發(fā)

這期內(nèi)容當中小編將會給大家?guī)碛嘘P(guān)vue2.0中怎么自定義Echarts組件,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

1、自定義 圖表 組件

Echarts.vue

<!-- 自定義 echart 組件 -->
<template>
 <div>
 <!-- echart表格 -->
 <div id="myChart" :></div>
 </div>
</template>
 
<script>
 export default {
 props: {
  // 樣式
  echartStyle: {
  type: Object,
  default(){
   return {}
  }
  },
  // 標題文本
  titleText: {
  type: String,
  default: ''
  },
  // 提示框鍵名
  tooltipFormatter: {
  type: String,
  default: ''
  },
  // 扇形區(qū)域名稱
  opinion: {
  type: Array,
  default(){
   return []
  }
  },
  // 提示框標題
  seriesName: {
  type: String,
  default: ''
  },
  // 扇形區(qū)域數(shù)據(jù)
  opinionData: {
  type: Array,
  default(){
   return []
  }
  },
 },
 data(){
  return {
  //
  }
 },
 mounted(){
  this.$nextTick(function() {
  this.drawPie('myChart')
  })
 },
 methods: {
  // 監(jiān)聽扇形圖點擊
  eConsole(param) {
  // 向父組件傳值
  this.$emit("currentEchartData",param.name);
  },
  // 繪制餅狀圖
  drawPie(id){
  this.charts = this.$echarts.init(document.getElementById(id));
  this.charts.on("click", this.eConsole);
  this.charts.setOption({
   title: {
   text: this.titleText, // 標題文本
   left: 'center'
   },
   tooltip : {
   trigger: 'item',
   formatter: "{a} <br/> " + this.tooltipFormatter + ":{c}"
   },
   legend: {
   bottom: 20,
   left: 'center',
   data: this.opinion // 扇形區(qū)域名稱
   },
   series : [
   {
    name:this.seriesName, // 提示框標題
    type: 'pie',
    radius : '65%',
    center: ['50%', '50%'],
    selectedMode: 'single',
    data:this.opinionData, // 扇形區(qū)域數(shù)據(jù)
    itemStyle: {
    emphasis: {
     shadowBlur: 10,
     shadowOffsetX: 0,
     shadowColor: 'rgba(0, 0, 0, 0.5)'
    }
    }
   }
   ]
  })
  }
 }
 }
</script>
 
<style lang="less" scoped>
 #myChart{
 width: 100%;
 }
</style>

2、頁面調(diào)用

Diagram.vue

<!-- 圖表 -->
<template>
 <div>
 <!-- 標題欄 -->
 <mt-header title="圖表">
  <router-link to="/" slot="left">
  <mt-button icon="back">返回</mt-button>
  </router-link>
 </mt-header>
 <!-- 內(nèi)容 -->
 <m-echarts
  :echartStyle="s"
  :titleText="a"
  :tooltipFormatter="b"
  :opinion="c"
  :seriesName="d"
  :opinionData="e"
  v-on:currentEchartData="getEchartData"
 ></m-echarts>
 </div>
</template>
 
<script>
 import mEcharts from '../components/Echarts'
 
 export default {
 name: 'Diagram',
 components: {
  mEcharts
 },
 data(){
  return {
  a:'水果銷售統(tǒng)計',
  b:'銷售數(shù)量',
  c:['香蕉','蘋果','橘子'],
  d:'銷售統(tǒng)計',
  e:[
   {value:3, name:'香蕉'},
   {value:3, name:'蘋果'},
   {value:3, name:'橘子'}
   ],
  s: {
   height: ''
  }
  }
 },
 created(){
  // 獲取屏幕高度
  this.s.height = document.documentElement.clientHeight - 44 + 'px';
 },
 methods: {
  getEchartData(val){
  console.log(val);
  }
 }
 }
</script>
 
<style lang="less" scoped>
 //
</style>

上述就是小編為大家分享的vue2.0中怎么自定義Echarts組件了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI