Vue Echarts:无法读取 null 的 属性 'getCartesian'

Vue Echarts: Cannot read property 'getCartesian' of null

我正在将 Vue 与 Quasar Framework 一起使用,使用基于 class 的组件并希望将 echarts (https://v-charts.js.org/) 添加到我的项目中。

我已经通过 npm 安装了它(echarts 和 v-charts,如教程所述) 当我尝试使用 lib 时,我总是收到消息:

Grid.js?5ae4:601 Uncaught TypeError: Cannot read property 'getCartesian' of null
at eval (Grid.js?5ae4:601)
at ExtendedClass.eval (Global.js?96f4:517)
at Array.forEach (<anonymous>)
at each (util.js?f160:300)
at ExtendedClass.eachSeries (Global.js?96f4:514)
at Function.Grid.create (Grid.js?5ae4:591)
at eval (CoordinateSystem.js?b745:52)
at Object.each (util.js?f160:308)
at CoordinateSystemManager.create (CoordinateSystem.js?b745:51)
at ECharts.update (echarts.js?665b:848)

我只是在做:

<template>
<div>
    <ve-histogram :data="chartDataHist"></ve-histogram>
    {{chartDataHist}}
</div>
</template>
<script lang="ts">
    import Vue from 'vue';
    import Component from 'vue-class-component';
    import VeHistogram from 'v-charts/lib/histogram.common';

@Component({
    components: {
        VeHistogram
    }
})
export default class GraficoIdEcharts extends Vue {

    chartDataHist = {
        columns: ['date', 'cost', 'profit', 'growthRate', 'people'],
        rows: [
            { 'cost': 1523, 'date': '01/01', 'profit': 1523, 'growthRate': 0.12, 'people': 100 },
            { 'cost': 1223, 'date': '01/02', 'profit': 1523, 'growthRate': 0.345, 'people': 100 },
            { 'cost': 2123, 'date': '01/03', 'profit': 1523, 'growthRate': 0.7, 'people': 100 },
            { 'cost': 4123, 'date': '01/04', 'profit': 1523, 'growthRate': 0.31, 'people': 100 }
        ]
    };
}

并没有成功,已经尝试了派,极地和各种情节。

要解决这个问题,您必须创建一个引导文件

// /src/boot/echart.js 
import { boot } from 'quasar/wrappers';
import VCharts from 'v-charts';

export default boot(({ app, router, store, Vue }) => {
    Vue.use(VCharts);
});

然后在quasar.conf.js中你会发现一个名为'boot'的键,它是一个数组。添加'echart'(与上面命名的文件相同)。

现在可以使用了!