为什么 WebStorm 使用 TypeScript 显示类型错误?

问题描述 投票:0回答:2

我正在使用

[email protected]
[email protected]
开发一个 Nextjs 项目,尽管编译项目有效,WebStorm 说存在类型错误。

这是一个 MRE(Nextjs):

// pages/index.tsx
import { Chart, registerables }
import { Line } from 'react-charts-j2'

const Index () => {
  const chart = {
    data: {
      labels: ['foo', 'bar', 'foobar', 'foobaz']
      datasets: [
        {
          label: 'Foo',
          data: [0, 1, 2, 3]
        }
      ]
    }
  }
  return (
    <Line data={chart.data} />
  )
}

我尝试将数据和标签类型传递给

Line
,例如:
<Line<Array<number>, string>
,但这也没有用。 IDE 显示的错误如下:

Type {datasets: {data: number[], label: string}[], labels: string[]} 不可分配给类型 ChartData<"line", TData, TLabel>

环境:

  • Nextjs:13.0.6
  • 反应:18.2.0
  • 节点:18.12.1
  • 打字稿:^5.0.4

这与我的 IDE 或我的代码有关吗?

typescript next.js webstorm
2个回答
0
投票

尝试这样做,而不是 chart.data 尝试传递图表

    <Line data={chart} />
  )

0
投票

这一定是我的 IDE 有问题,因为只需在设置 (

Show project errors
) 中禁用并重新启用
Settings -> Languages & Frameworks -> TypeScript
,错误就消失了。

© www.soinside.com 2019 - 2024. All rights reserved.