有学有练才叫学习:学而不思则罔,思而不学则殆:学而不习,纸上谈兵,习而不进,画地为牢!

怎么在Vue中引入 echarts(详细步骤)

前端框架 炮渣日记 3周前 (11-08) 24次浏览 已收录 0个评论 扫描二维码

echarts 是由百度开源的一个基于 Javascript 的,能提供直观、生动、交互、个性化定制的数据可视化图表库。

在 Vue 项目中使用,主要有两种方式:

直接全局引入整个 echarts

第一步、安装模块:

npm install echarts -S

第二步、引入框架:

// main.js 
import echarts from 'echarts'
Vue.prototype.$echarts = echarts

第三步、组件中使用:

<template>
  <div id="myChart" style="width: 300px; height: 300px;"></div>
</template>

<script>
export default {
  data () {
    return {}
  },
  // 一定要在 mounted 中实例化 echarts 对象,因为我们要确保 dom 元素已经挂载到页面中
  mounted(){
    this.drawLine();
  },
  methods: {
    drawLine(){
        // 基于准备好的dom,初始化echarts实例
        var myChart = this.$echarts.init(document.getElementById('myChart'))
        // 绘制图表
        myChart.setOption({
            title: { text: '在Vue中使用echarts' },
            tooltip: {},
            xAxis: {
                data: ["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"]
            },
            yAxis: {},
            series: [{
                name: '销量',
                type: 'bar',
                data: [5, 20, 36, 10, 10, 20]
            }]
        });
    }
  }
}
</script>

这种方式最简单,但是也有缺点,因为是引入整个 echarts,所以会导致项目体积很大。如果对代码包的体积要求比较高,可以采用下面的按需引入。

按需引入

这种只是将需要用到的 echarts 模块引入,从而可以减少整个项目包的体积。

第一步、按需引入图表组件:

// main.js
// 引入 echarts 主模块
// 这里之所以使用 require 而不是 import,是因为 require 可以直接从 node_modules 中查找,而 import 必须把路径写全
let echarts = require('echarts/lib/echarts');

// 引入柱状图组件
require('echarts/lib/chart/bar');
// 引入提示框组件、引入标题组件
require('echarts/lib/component/tooltip');
require('echarts/lib/component/title');

Vue.prototype.$echarts = echarts;

第二步、组件中使用:

<template>
  <div id="myChart" style="width: 300px; height: 300px;"></div>
</template>

<script>
export default {
  data () {
    return {}
  },
  // 一定要在 mounted 中实例化 echarts 对象,因为我们要确保 dom 元素已经挂载到页面中
  mounted(){
    this.drawLine();
  },
  methods: {
    drawLine(){
        // 基于准备好的dom,初始化echarts实例
        var myChart = this.$echarts.init(document.getElementById('myChart'))
        // 绘制图表
        myChart.setOption({
            title: { text: '在Vue中使用echarts' },
            tooltip: {},
            xAxis: {
                data: ["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"]
            },
            yAxis: {},
            series: [{
                name: '销量',
                type: 'bar',
                data: [5, 20, 36, 10, 10, 20]
            }]
        });
    }
  }
}
</script>
喜欢 (0)
炮渣日记
关于作者:
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址