使用的是vue2.0,请问.vue文件中如何使用echarts?

我在A.vue文件中的temple标签里写<div id="main"></div>,在script标签里直接写var myChart = echarts.init(document.getElementById('main')),然后在B.vue文件中import A.vue,然后就报错了,说没有找到main这个dom元素,请问这种情况该如何解决比较好呢?

阅读 17.3k
6 个回答

main.js

import echarts from "echarts"

A.vue
HTML

<div id="charts">
    <div id="main"  :style="{width:'600px',height:'400px'}"></div>
</div>

javascript


     export default{
        data (){
            return {
                msg:"123"
            }
        },
        mounted (){
            var myChart = echarts.init(document.getElementById('main'));
            myChart.setOption({
                title: { text: 'ECharts 入门示例' },
                tooltip: {},
                xAxis: {
                    data: ["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"]
                },
                yAxis: {},
                series: [{
                    name: '销量',
                    type: 'bar',
                    data: [5, 20, 36, 10, 10, 20]
                }]
            });
        }

    }
let echarts = require('echarts/lib/echarts');
// 引入折现图
require('echarts/lib/chart/line');
// 引入提示框和标题组件
require('echarts/lib/component/tooltip');
require('echarts/lib/component/title');
require('echarts/lib/component/toolbox');
export default{
    data(){
        return {
            chart:null
        }
    },
    
    ready(){
        this.chart = echarts.init(document.querySelector('.echarts'))
        this.chart.setOption({
            grid: {
                show:false,
                top:'15%',
                left: '3%',
                right: '7%',
                bottom: '5%',
                containLabel: true,
            },
            xAxis: {
                type: 'category',
                boundaryGap:false,
                data:[]
            },
            yAxis: {
                type:'value'
            },
            series: [
                {
                    type:'line',
                    data:[]
                }
            ]
        });
        this.$http.post(api,{params:...}).then((res)=>{
            //setting your chart datas
        })
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题