vue echart 组件,vue公共组件的封装

  vue echart 组件,vue公共组件的封装

  这篇文章主要介绍了某视频剪辑软件中封装展示公共组件过程,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

  

目录

   1、安装电子海图2、在mian.js中全局引入3、下面开始封装图表4、接下来只需要在需要显示图表的地方引入Echart.vue定义图表公共样式是为了统一同一网站各页面图表的基础样式baseOption.js(轴线、区域、色系、字体),统一封装后页面需要直接引入,传入所需参即可覆盖基础样式。

  以下示例封装图表组件Echart.vue。

  

1、安装echarts

  新公共管理安装电子图表-保存

  新公共管理安装lodash - save //若已安装请忽略

  

2、在mian.js中全局引入

  从"元素-用户界面"导入ElementUI

  导入“元素-ui/lib/主题-粉笔/索引。CSS”;

  vue。使用(元素ui);

  

3、下面开始封装图表

  baseOption.js文件:公共样式定义,为了统一同网站各种图表的基础样式,比如轴线、图各板块颜色,值仅供参考):

  //baseOption.js

  导出默认值{

  颜色:[

  #0067E1 ,

  #0CC1FF ,

  #00D1B3 ,

  #85E814 ,

  #FFA082 ,

  ],

  工具提示:{},

  图例:{

  方向:"水平",

  类型:"滚动",

  pageIconSize:12,

  pageIconColor:#aaa ,

  pageiconactivecolor:"# 2f 4554 ",

  pageTextStyle:{

  颜色: #999999

  },

  项目宽度:20,

  项目高度:12,

  top:0,

  textStyle:{

  颜色: #999999

  },

  },

  网格:{

  顶部:"13%",

  左:"3%",

  对:"10%",

  底部:"2%",

  containLabel: true,

  },

  xAxis: [

  {

  轴线:{

  线型:{

  颜色: rgba(65,97,128,0.15),

  //类型:"虚线",

  },

  },

  轴棒:{

  秀:假的,

  },

  axisLabel: {

  间隔:0,

  颜色: #rgba(0,0,0,0.25),

  textStyle: {

  fontSize: 10,

  }

  },

  nameTextStyle:{

  颜色: #999999 ,

  fontSize: 10,

  },

  },

  ],

  亚西斯:[

  {

  axisLabel: {

  颜色: #rgba(0,0,0,0.25),

  textStyle: {

  fontSize: 11,

  },

  },

  轴线:{

  线型:{

  颜色: rgba(65,97,128,0.15),

  },

  },

  分割线:{

  线型:{

  颜色: rgba(65,97,128,0.15),

  },

  },

  轴棒:{

  秀:假的,

  },

  nameTextStyle:{

  颜色: #999999 ,

  fontSize: 10,

  填充:[0,20,0,0]

  },

  最小间隔:1

  },

  ],

  };

  Echart.vue文件:图本身组件

  //Echart.vue

  模板

  div :id=elId style=高度:100%,宽度:100% /

  /模板

  脚本

  从“电子海图”导入电子海图;

  从"洛达什"导入{合并,de bounce };

  //引入公共样式

  从导入基本选项./baseOption

  导出默认值{

  data() {

  返回{

  elId: ,

  vOption: {

  系列:[],

  },

  };

  },

  道具:{

  选项数据:对象,

  },

  计算值:{

  //合并配置对象

  选项(){

  返回merge({},baseOption,this.vOption,this。选项数据);

  },

  },

  已创建(){

  这个。elid=这个。uuid();

  },

  已安装(){

  //实例化展示对象

  这个. nextTick(()={

  这个。初始化图表();

  });

  },

  销毁前(){

  如果(!this.chart) {

  返回;

  }

  这个。图表。dispose();

  this.chart=null

  },

  观察:{

  optionData: {

  深:真的,

  处理程序:函数(){

  这个. nextTick(()={

  这个。初始化图表();

  });

  },

  },

  },

  方法:{

  //生成唯一全局唯一识别做为唯一标识符

  uuid() {

  返回

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: