如何使用 vue.js 将动态数据添加到 apexcharts?

How do I add dynamic data to apexcharts using vue.js?

我想在我的甜甜圈顶点图中使用动态数据,但我不知道正确的方法。

我试过在数据下设置"test: 5",然后依次更改静态数字:[this.test, 4, 1]。没有输出任何东西,我是编程新手

<script>
import VueApexCharts from 'vue-apexcharts'
export default {
name: 'Dashboard',
components: {
apexcharts: VueApexCharts
},
data () {
return {
  test: 6,
  series: [this.test, 5, 4],
  chartOptions: {
    plotOptions: {
      pie: {
        donut: {
          labels: {
            show: true,
            name: {
              fontSize: '24px'
            },
            value: {
              fontSize: '34px',
              color: '#fff'
            }
          }
        }
      }
    },
    tooltip: {
      enabled: false
    },
    legend: {
      show: false
    },
    fill: {
      colors: ['#4b367c', '#2aa5ed', '#db2828']
    },
    dataLabels: {
      enabled: false
    },
    labels: ['Utkast', 'Öppen', 'Förfallen'],
    colors: ['#4b367c', '#2aa5ed', '#db2828']
  }
}
},
mounted () {
this.$store.commit('setPageTitle', { title: 'Översikt' })
}
}
</script>

我的目标是进入 firebase 并使用那里的数据,但一开始我只是想测试如何添加任何数据,但在这里已经失败了。

您不应该直接在数据中将一个变量用于另一个变量。 系列:[this.test, 5, 4], 这将使 return 在 this.test 中为空。 您可以先将系列设置为空,然后再设置值。 系列:[] 然后在某些函数中填充系列。 或者使用 computed() 如下:

computed: {
    series() {
        return this.test;
    }
}

您可以像这样动态更新图表数据。

this.chartOptions = {labels:['dynamic data here']}
this.series = ['dynamic data here']