最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
当前位置: 首页 - 科技 - 知识百科 - 正文

vue.js如何将echarts封装为组件一键使用详解

来源:懂视网 责编:小采 时间:2020-11-27 22:28:16
文档

vue.js如何将echarts封装为组件一键使用详解

vue.js如何将echarts封装为组件一键使用详解:前言 本文主要给大家介绍了关于vue.js将echarts封装为组件一键使用的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。 说明 做项目的时候为了让数据展示的更加直观,总会用到图表相关的控件,而说到图表控件第一时间当然想到E
推荐度:
导读vue.js如何将echarts封装为组件一键使用详解:前言 本文主要给大家介绍了关于vue.js将echarts封装为组件一键使用的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。 说明 做项目的时候为了让数据展示的更加直观,总会用到图表相关的控件,而说到图表控件第一时间当然想到E

前言

本文主要给大家介绍了关于vue.js将echarts封装为组件一键使用的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

说明

做项目的时候为了让数据展示的更加直观,总会用到图表相关的控件,而说到图表控件第一时间当然想到ECharts这个开源项目,而它不像iview、element-ui这些组件使用起来那么便捷,需要绕一个小弯,为了图方便于是对ECharts进行了一层封装

控件演示


控件使用

概要

  • 基于echarts的二次封装
  • 由数据驱动
  • 控件源码见src/components/charts
  • 文档

    props

    属性 说明 类型
    _id 图表唯一标识,当id重复将会报错 String
    _titleText 图表标题 String
    _xText x轴描述 String
    _yText y轴描述 String
    _chartData 图表数据 Array
    _type 图表类型,提供三种(LineAndBar/LineOrBar/Pie)

    调用示例

     <chart
     :_id="'testCharts'"
     :_titleText="'访问量统计'"
     :_xText="'类别'"
     :_yText="'总访问量'"
     :_chartData="chartData"
     :_type="'Pie'"></chart>
     //测试数据样例 [["类别1",10],["类别2",20]]

    实现方式

    创建一个待渲染的dom

    <template>
     <div :id="_id" class="chart"></div>
    </template>

    绘制函数

    function drawPie(chartData,id,titleText,xText,yText) {
     var chart = echarts.init(document.getElementById(id))
     var xAxisData = chartData.map(function (item) {return item[0]})
     var pieData = []
     chartData.forEach((v,i)=>{
     pieData.push({
     name:v[0],
     value:v[1]
     })
     })
     chart.setOption({
     title : {
     text: titleText,
     subtext: '',
     x:'center'
     },
     tooltip : {
     trigger: 'item',
     formatter: "{a} <br/>{b} : {c} ({d}%)"
     },
     legend: {
     orient: 'vertical',
     left: 'left',
     data: xAxisData
     },
     series : [
     {
     name: xText,
     type: 'pie',
     radius : '55%',
     center: ['50%', '60%'],
     data:pieData,
     itemStyle: {
     emphasis: {
     shadowBlur: 10,
     shadowOffsetX: 0,
     shadowColor: 'rgba(0, 0, 0, 0.5)'
     }
     }
     }
     ]
     })
     }

    挂载结束、数据源改变时重绘

     watch:{
     _chartData(val){
     switch (this._type){
     case "LineAndBar":
     drawLineAndBar(val,this._id,this._titleText,this._xText,this._yText);
     break
     case "LineOrBar":
     drawLineOrBar(val,this._id,this._titleText,this._xText,this._yText);
     break
     case "Pie":
     drawPie(val,this._id,this._titleText,this._xText,this._yText);
     break
     default:
     drawLineAndBar(val,this._id,this._titleText,this._xText,this._yText);
     break
     }
     }
     },
     mounted() {
     switch (this._type){
     case "LineAndBar":
     drawLineAndBar(this._chartData,this._id,this._titleText,this._xText,this._yText);
     break
     case "LineOrBar":
     drawLineOrBar(this._chartData,this._id,this._titleText,this._xText,this._yText);
     break
     case "Pie":
     drawPie(this._chartData,this._id,this._titleText,this._xText,this._yText);
     break
     default:
     drawLineAndBar(this._chartData,this._id,this._titleText,this._xText,this._yText);
     break
     }
     }

    总结

    声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文档

    vue.js如何将echarts封装为组件一键使用详解

    vue.js如何将echarts封装为组件一键使用详解:前言 本文主要给大家介绍了关于vue.js将echarts封装为组件一键使用的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。 说明 做项目的时候为了让数据展示的更加直观,总会用到图表相关的控件,而说到图表控件第一时间当然想到E
    推荐度:
    标签: VUE js Echarts
    • 热门焦点

    最新推荐

    猜你喜欢

    热门推荐

    专题
    Top