尝试在 typescript 项目中使用 recharts 时出错

Posted

技术标签:

【中文标题】尝试在 typescript 项目中使用 recharts 时出错【英文标题】:Error trying using recharts in typescript project 【发布时间】:2021-05-23 15:36:12 【问题描述】:

您好,我已经在我的项目中安装了 recharts 和 @types/recharts。现在,当我尝试将任何图表导入组件时,出现此错误:

编译失败。

/Users/rmanreza/Projects/portfolio/node_modules/recharts/types/cartesian/YAxis.d.ts /Users/rmanreza/Projects/portfolio/node_modules/recharts/types/cartesian/YAxis.d.ts(1,13) 中的 TypeScript 错误: '=' 预期。 TS1005

1 |从“反应”导入类型 FunctionComponent, SVGProps ; | ^ 2 |从'../util/types'导入 BaseAxisProps, AxisInterval ; 3 |接口 YAxisProps 扩展 BaseAxisProps 4 | yAxisId?: 字符串 |号码;

这是 package.json 的样子:

*

"name": "portfolio", "version": "0.1.0", "private": true, "dependencies": "@fortawesome/fontawesome-svg-core": "^1.2.30" , "@testing-library/jest-dom": "^4.2.4", "@testing-library/react": "^9.3.2", "@testing-library/user-event": "^7.1. 2”、“@types/recharts”:“^1.8.19”、“axios”:“^0.21.1”、“formik”:“^2.2.6”、“react”:“^16.13.1”、 “react-dom”:“^16.13.1”,“react-icons”:“^3.11.0”,“react-router”:“^5.2.0”,“react-router-dom”:“^5.2 .0”、“react-scripts”:“3.4.1”、“recharts”:“^2.0.7”、“styled-components”:“^5.1.1”、“typescript”:“^3.7.5” , "是的": "^0.29.3" , …… * 我不知道如何解决这个问题,所以我可以使用图表

【问题讨论】:

这不是一个真正的解决方案,所以我不会将它作为“答案”发布,而是作为评论发布。我从 2.0.7 恢复到 2.0.3,不再有这个问题。 @CherryNerd 谢谢它的工作。 【参考方案1】:

这是由 recharts 使用 TypeScript ^3.8 引起的。 TypeScript 3.8 引入了 new syntax to import and export types,recharts 已经利用了它。 recharts 应该增加了主要版本号,因为这是一个重大更改(正如您所发现的)。为了使用最新版本的recharts,您需要将您的 TypeScript 版本提升到至少 3.8。

【讨论】:

以上是关于尝试在 typescript 项目中使用 recharts 时出错的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Typescript 项目中使用 express-mysql-session?

如何在带有 Typescript 项目的 React Native 中使用 AWS Amplify?

使用 Typescript 在 VueJS2 项目中使用 Jest 进行测试

在 Vue 2 / Nuxt / Typescript / @nuxtjs-composition-api 项目中使用 VSCode Volar 扩展

Storybook - 使用自定义 webpack / babel 的 typescript 项目中没有出现任何故事

在 NPM 注册表中发布的 Typescript 模块 - 在不同项目中使用时找不到模块