vue directive(指令)形式使用echarts

安装 echarts依赖: npm install echarts --save

新建指令文件 echarts.js

import Vue from 'vue';
// 引入echarts主模块
import echarts from 'echarts'
export default {
  deep: true,
  bind: (el, binding) => {
    Vue.nextTick(() => {
      el.echartsInstance = echarts.init(el);

      el.resizeEventHandler = function () {
        el.echartsInstance.resize();
      };

      if (window.attachEvent) {
        window.attachEvent('onresize', el.resizeEventHandler);
      } else {
        window.addEventListener('resize', el.resizeEventHandler, false);
      }
    });
  },
  update (el, binding) {
    Vue.nextTick(() => {
      el.echartsInstance.setOption(binding.value);
    });
  },
  unbind: (el) => {
    el.echartsInstance.dispose();

    let _this = this;

    if (window.attachEvent) {
      window.detachEvent('onresize', _this.resizeEventHandler);
    } else {
      window.removeEventListener('resize', _this.resizeEventHandler, false); ;
    }
  }
}

指令使用

// 引入指令文件
import echarts from '../directive/echarts.js'

// 写入指令
directives: {
    echarts
  }

// 在页面中引用
<div v-echarts='echartsOption' id="echarts" class="echarts-box"></div>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 版权声明:本文为博主原创文章,未经博主允许不得转载。 webpack介绍和使用 一、webpack介绍 1、由来 ...
    it筱竹阅读 13,862评论 0 21
  • 原文链接:http://www.jianshu.com/p/2a9367afe9e7 1510997059(1)....
    悬笔e绝阅读 10,903评论 0 0
  • 无意中看到zhangwnag大佬分享的webpack教程感觉受益匪浅,特此分享以备自己日后查看,也希望更多的人看到...
    小小字符阅读 12,561评论 7 35
  • 前言 众所周知目前比较火的工具就是gulp和webpack,但webpack和gulp却有所不同,本人两者的底层研...
    cduyzh阅读 5,219评论 0 13
  • 天空阴云密布,乌云浓的就像提前进入傍晚,云层中还夹带着电光石火看来一场雷阵雨即刻就要到来。小镇上因为要下雨的缘故没...
    梦里生活里阅读 1,355评论 0 0

友情链接更多精彩内容