使用可脚本化选项时,Datalabels插件引发错误

时间:2019-04-29 19:08:25

标签: chart.js

我有一个甜甜圈图。我正在使用chartjs-plugin-datalabels。对于backgroundColor,我使用以下配置:

plugins: {
      datalabels: {
        backgroundColor: function(context) {
          return context.dataset.backgroundColor;
        }
}

基于docs,背景颜色属性应允许可编写脚本的选项。

我收到以下错误:

error TS2322: Type '(context: Context) => string | string[] | CanvasGradient | CanvasPattern | ChartColor[]' is not assignable to type 'string | CanvasGradient | CanvasPattern | (string | CanvasGradient | CanvasPattern)[] | ((context: Context) => string | CanvasGradient | CanvasPattern)'.

我正在使用以下库版本:

"chart.js": "^2.8.0",
"chartjs-plugin-datalabels": "^0.6.0",

1 个答案:

答案 0 :(得分:0)

由于饼图为其中的每个数据集定义了backgroundColor的数组,并且为图表上的每个datalabel调用了该函数,因此您将需要一种方法来判断该函数应使用该数组中的哪种颜色,可能使用索引就能解决问题。

尝试这样的事情:

return context.dataset.backgroundColor[context.dataIndex];