Как использовать метки данных chartjs-plugin-data для конкретных диаграмм с помощью vue-chart.js

Я пытаюсь использовать chartjs-plugin-datalables для определенных диаграмм, используя vue-chartjs. Итак, во-первых, я отменил регистрацию плагина глобально из моего файла main.js, поскольку он регистрируется глобально при импорте.

import Chart from 'chart.js';
import ChartDataLabels from 'chartjs-plugin-datalabels';

Chart.defaults.global.plugins.datalabels.display = false;

Затем я добавляю плагин для конкретной диаграммы. Но ярлыки не отображаются.

import { Pie } from "vue-chartjs";
import ChartDataLabels from "chartjs-plugin-datalabels";
export default {
    extends: Pie,
    methods: {
        intChart() {
            var _this = this;
            this.renderChart({
                ..........       
            });
        }
    },

    mounted() {
        this.addPlugin(ChartDataLabels);
        this.intChart();
    }
};

Если я отключу следующую строку, она будет работать для всех графиков.

Chart.defaults.global.plugins.datalabels.display = false;

Любая идея, почему это не работает для определенных графиков?


person Leon Talukdar    schedule 17.06.2020    source источник
comment
Есть ли в вашем коде метод addPlugin? Тогда покажи это   -  person Anatoly    schedule 17.06.2020
comment
Нет. Это библиотечная функция vue-chartjs. Кстати, у меня есть решение. Спасибо.   -  person Leon Talukdar    schedule 18.06.2020


Ответы (1)


Чтобы отключить chartjs-plugin-datalabels глобально, мне пришлось использовать

Chart.plugins.unregister(ChartDataLabels);

вместо

Chart.defaults.global.plugins.datalabels.display = false;

в моем файле main.js. Тогда функция addPlugin работает отлично.

person Leon Talukdar    schedule 18.06.2020
comment
Не могли бы вы поделиться своим кодом функции addPlugin ? Спасибо - person Tom687; 06.05.2021