在后台管理系统中,图表是一个很普遍的元素。目前常用的图标插件有 charts, Echarts, highcharts。这次将介绍 Echarts 在 Vue 项目中的应用。

一、安装插件
使用 cnpm 安装 Echarts
cnpm install echarts -S
和之前介绍的 axios 类似,echarts 也不能通过 Vue.use() 进行全局调用
通常是在需要使用图表的 .vue 文件中直接引入
import echarts from 'echarts'
也可以在 main.js 中引入,然后修改原型链
Vue.prototype.$echarts = echarts
然后就可以全局使用了
let myChart = this.$echarts.init(document.getElementById('myChart'))
二、创建图表
首先需要在 HTML 中创建图表的容器
需要注意的是,图表的容器必须指定宽高,也就是说 width,height 不能使用百分比,只能用 px
这样确实不够灵活,不过我们可以用 js 来改变 width 和 height,使图表容器能够自适应,具体的实现请往后看
然后在 mounted 中创建图表,具体的配置参考官方文档,这里不再赘述
三、按需引入
上面引入的 echarts 包含了所有图表,但有时候我们只需要一两个基本图表,这时候完整的 echarts 就显得累赘
假如只需要创建一个饼图,那么可以这么做:
// 引入基本模板
let echarts = require('echarts/lib/echarts')
// 引入饼图组件
require('echarts/lib/chart/pie')
// 引入提示框和图例组件
require('echarts/lib/component/tooltip')
require('echarts/lib/component/legend')
之所以使用 require 而不是 import,是因为 require 可以直接从 node_modules 中查找,而 import 必须把路径写全
可以按需引入的模块列表见 https://github.com/ecomfe/echarts/blob/master/index.js
四、适应容器
上面说过,图表的容器必须固定宽高,这确实是一个比较奇特的设定
为了解决这个问题,需要给图表容器外面再加一个容器,而这个外容器的宽高可以适应页面。上面的 <div class="charts"> 就是这样的外容器
let chartBox = document.getElementsByClassName('charts')[0]
let myChart = document.getElementById('myChart')
// 用于使chart自适应高度和宽度,通过窗体高宽计算容器高宽
function resizeCharts () {
myChart.style.width = chartBox.style.width + 'px'
myChart.style.height = chartBox.style.height + 'px'
}
// 设置容器高宽
resizeCharts()
let mainChart = echarts.init(myChart)
mainChart.setOption(options)
当页面加载的时候,将外容器的宽高,赋给图表容器
但这只是解决了页面加载时的自适应问题
如果在页面加载之后,仍需要图表自适应宽高,就需要用到 echarts 的媒体查询
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# vue使用echarts
# vue2.0使用echarts
# vue中使用echarts
# VUE2.0+Element-UI+Echarts封装的组件实例
# vue2.0中自适应echarts图表、全屏插件screenfull的使用
# 详解Vue2+Echarts实现多种图表数据可视化Dashboard(附源码)
# Vue2+Echarts封装组件之专注逻辑
# 图表生成自动化方式
# 自适应
# 是一个
# 加载
# 只需要
# 按需
# 的是
# 是在
# 是因为
# 可以用
# 说过
# 可以直接
# 但这
# 这么做
# 再加
# 只能用
# 创建一个
# 需要注意
# 解决这个问题
# 大家多多
# 后台管理
相关文章:
一键制作网站软件下载安装,一键自动采集网页文档制作步骤?
免费ppt制作网站,有没有值得推荐的免费PPT网站?
建站之星如何快速解决建站难题?
如何在宝塔面板创建新站点?
Android滚轮选择时间控件使用详解
,怎么用自己头像做动态表情包?
大连网站制作公司哪家好一点,大连买房网站哪个好?
公司网站制作需要多少钱,找人做公司网站需要多少钱?
Avalonia如何实现跨窗口通信 Avalonia窗口间数据传递
制作国外网站的软件,国外有哪些比较优质的网站推荐?
如何通过虚拟主机空间快速建站?
如何零基础开发自助建站系统?完整教程解析
长沙做网站要多少钱,长沙国安网络怎么样?
如何在建站主机中优化服务器配置?
b2c电商网站制作流程,b2c水平综合的电商平台?
如何通过虚拟主机快速完成网站搭建?
东莞市网站制作公司有哪些,东莞找工作用什么网站好?
已有域名如何免费搭建网站?
山东云建站价格为何差异显著?
济南企业网站制作公司,济南社保单位网上缴费步骤?
微网站制作教程,不会写代码,不会编程,怎么样建自己的网站?
高性能网站服务器部署指南:稳定运行与安全配置优化方案
,网站推广常用方法?
如何快速上传自定义模板至建站之星?
云南网站制作公司有哪些,云南最好的招聘网站是哪个?
重庆市网站制作公司,重庆招聘网站哪个好?
如何快速查询网站的真实建站时间?
如何在万网自助建站平台快速创建网站?
如何快速生成专业多端适配建站电话?
可靠的网站设计制作软件,做网站设计需要什么样的电脑配置?
实惠建站价格推荐:2025年高性价比自助建站套餐解析
如何在自有机房高效搭建专业网站?
网站制作网站,深圳做网站哪家比较好?
香港服务器租用费用高吗?如何避免常见误区?
如何在Windows虚拟主机上快速搭建网站?
微信小程序 五星评分(包括半颗星评分)实例代码
建站之星如何助力企业快速打造五合一网站?
高端网站建设与定制开发一站式解决方案 中企动力
宝塔新建站点为何无法访问?如何排查?
中山网站推广排名,中山信息港登录入口?
电视网站制作tvbox接口,云海电视怎样自定义添加电视源?
如何自定义建站之星模板颜色并下载新样式?
整蛊网站制作软件,手机不停的收到各种网站的验证码短信,是手机病毒还是人为恶搞?有这种手机病毒吗?
如何用免费手机建站系统零基础打造专业网站?
网站设计制作公司地址,网站建设比较好的公司都有哪些?
网站制作的步骤包括,正确网址格式怎么写?
建站之星安装路径如何正确选择及配置?
建站主机如何选?高性价比方案全解析
外汇网站制作流程,如何在工商银行网站上做外汇买卖?
浅析上传头像示例及其注意事项
*请认真填写需求信息,我们会在24小时内与您取得联系。