对象字面量只能指定已知的属性,'name'类型不存在但类型存在

Object literal may only specify known properties, and 'name' does not exist in type but the type exists

奇怪的问题,我收到上面提到的错误,但我不明白为什么,这是显示所有内容的屏幕截图:

这是我的代码:

const createSeries = (report: ReportEntry[], key: string) => {
  const reportEntryValues: any = [];
  let itemColor: string;
  let series: ApexAxisChartSeries;

  report.forEach((item: ReportEntry) => {
    reportEntryValues.push(item[key as keyof typeof item]);
  });

  switch (key) {
    case "approved":
      itemColor = Colors.Green;
      break;
    case "denied":
      itemColor = Colors.Red;
      break;
    default:
      itemColor = Colors.Blue;
  }

  series = {
    name: key,
    type: "bar",
    color: itemColor,
    data: reportEntryValues,
  };

  return series
};

非常感谢任何帮助,我一直在谷歌搜索为什么会发生这种情况,代码工作正常但 typescript 仍然对我尖叫。

提前致谢!

编辑:playground link

问题是 ApexAxisChartSeries 是数组类型。因此,您需要将 ApexAxisChartSeries 更改为对象或 return 数组。

Playground with solutions