Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Chart.js Datalabels插件在使用脚本选项时引发错误_Chart.js - Fatal编程技术网

Chart.js Datalabels插件在使用脚本选项时引发错误

Chart.js Datalabels插件在使用脚本选项时引发错误,chart.js,Chart.js,我有一张油炸圈饼图。我正在使用chartjs插件数据标签。对于背景色,我使用以下配置: plugins: { datalabels: { backgroundColor: function(context) { return context.dataset.backgroundColor; } } 基于,background color属性应允许可编写脚本的选项 我收到以下错误: error TS2322: Type '(cont

我有一张油炸圈饼图。我正在使用chartjs插件数据标签。对于背景色,我使用以下配置:

plugins: {
      datalabels: {
        backgroundColor: function(context) {
          return context.dataset.backgroundColor;
        }
}
基于,background color属性应允许可编写脚本的选项

我收到以下错误:

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",

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

试着这样做:

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

我认为问题在于
context.dataset.backgroundColor
是一个数组,因为函数是为每个数据调用的,可能使用索引会有所帮助,请尝试以下方法
返回context.dataset.backgroundColor[context.dataIndex]
@franciscosares它起作用了。回答这个问题,我会接受的。