Кажется, есть несколько примеров того, как сделать что-то похожее, но все немного отличается от моего случая. Я загружаю некоторые данные о запасах из API (в файле JS), а затем использую их в своем VUE. Я хотел бы обновить серию диаграмм новым массивом, скомпилированным из данных API, но он не работает, и я не получаю никаких ошибок.
Моя Vue выглядит так:
<template>
<div>
<highcharts :options="chartOptions" :updateArgs="[true, false]" ref="highcharts"></highcharts>
</div>
</template>
<script>
import appService from '../stock_prices'
import {Chart} from 'highcharts-vue'
export default {
name: 'stocks',
props: {
msg: String
},
data () {
return {
chartOptions: {
mySeries: [],
info: {},
updateArgs: [true, true, true],
series: [{
data: [1,2,3,4,5,6,7]
}],
}
},
}
}, //data
components: {
highcharts: Chart
},
methods: {
updateSeries() {
for (var i = 0; i < this.info.stock_prices.length; i++) {
this.mySeries.push([this.info.stock_prices[i].volume]);
i++
}
data: this.mySeries
}
}, //methods
async created () {
this.info = await appService.getPosts();
this.updateSeries()
}, //async created
} //export default
Я бы хотел дождаться загрузки всех своих данных из моего API (в компоненте appService), а затем использовать их для создания обновленной серии, но я не уверен, что это именно то, что происходит.
Возможно, важное замечание: если я заменю data: this.mySeries
в моем методе на что-то вроде data: [10,10,10,10,10,10]
, это все равно не удастся - ошибок нет, и серия не обновляется.
Спасибо!