Я использую highcharts- vue, чтобы иметь Highcharts в моем Vue проекте.
A) Прежде всего, в javascript следующие работы
let b =5;
let data = {
a:b
}
console.log('data', data.a);
В журнале написано 5, значение b
В Vue и старшие чарты Я стараюсь иметь одинаковые логики c. Установите старшие диаграммы в шаблоне vue, сначала установите его параметры пустыми, затем попытайтесь присвоить номера сериям. Шаблон <highcharts ref="chart" :callback="chartcallback" :options="options" ></highcharts>
, а затем используйте Vue
B) установить переменные как пустые массивы, передать их в опции и использовать эти переменные для обновления параметров в vue
data(){
return{
series:[],
options: {
series: this.series,
}
}
}
Затем, в Vue, если я сделаю
console.log(this.options.series);
this.series.push({
name:'hello',
data:[]
});
console.log(this.options.series);
Задайте options.series как var, измените var и options.series также изменится. Первый журнал показывает undefined
, второй - пустой массив, но я просто поместил в него имя и данные. Это смущает меня, потому что это так же, как A), в javascript это работает. Здесь это не так. Это из-за Vue или Highcharts?
Другой способ, который я попробовал, это
C) установить опции как пустые, установить переменные, равные опции переменным
data(){
return{
options: {
series: [],
}
}
}
Затем, в Vue, если я делаю
console.log(this.options.series);
this.series.push({
name:'hello',
data:[]
});
this.options.series = this.series
console.log(this.options.series);
Это работает, но я не понимаю, почему. Первый журнал - это пустой массив, второй журнал имеет имя и данные. Если настройка параметров, а затем установка переменной, равной ей, почему B) не работает? Я также установил переменную для параметров, но в другое время.
Пожалуйста, я хочу понять, почему B, который выглядит как A, не работает. Также почему C работает, так как я устанавливаю options.series для var, после того, как параметры созданы
Спасибо