Ошибка типа ApexChart: c не определено при обновлении диаграммы

Я начал использовать ApexChart, и он отлично сработал для создания диаграммы, но он возвращает ошибку «c is undefined», когда я пытаюсь обновить диаграмму.

Ниже показано, как я создаю диаграмму. даты - это массив с некоторыми датами и значениями массив с числами

var options = {
    chart: {
        height: 350,
        type: 'area',
        zoom: {
            enabled: false
        }
    },
    dataLabels: {
        enabled: false
    },
    stroke: {
        curve: 'straight'
    },
    series: [{
        name: "Sales",
        data: values
    }],
    title: {
        text: 'Number os sales',
        align: 'left'
    },
    labels: dates,
    xaxis: {
        type: 'datetime'
    },
    yaxis: {
        opposite: true
    },
    legend: {
        horizontalAlign: 'left'
    }
}
var chart = new ApexCharts(
    document.querySelector("#salesChart"),
    options
)
if (document.getElementById('salesChart')) {
    chart.render();
}

Затем я пытаюсь обновить диаграмму:

// Update label
ApexCharts.exec('salesChart', 'updateOptions', {
    xaxis: {
        labels: dates
    }
}, false, true)
// Update values
ApexCharts.exec('salesChart', 'updateSeries', [{
    data: values
}], true);

Вышеупомянутое обновление вызывается, когда я устанавливаю новые значения для дат и значений массивов. Он возвращает ошибку:

TypeError: "c is undefined"
    getChartByID http://myserver.com/assets/js/vendors/charts/apex-charts.js:27013
    exec http://myserver.com/assets/js/vendors/charts/apex-charts.js:26952

person myTest532 myTest532    schedule 20.03.2020    source источник


Ответы (1)


Вы забыли указать идентификатор диаграммы в параметрах

var options = {
  chart: {
    id: 'salesChart'
  }
}

Функция ApexCharts.exec работает только в том случае, если вы указываете идентификатор диаграммы.

person junedchhipa    schedule 20.03.2020