在 tsx 中导入 jsx

4
我继承了一个使用JSX的遗留项目。我正在将JSX转换为TSX。目前,在TSX中导入JSX和JS文件时,我会收到错误消息“找不到模块 'config/abc_module'或其对应的类型声明”。我知道由于它是JS文件,所以缺少类型。我已经添加了JSDoc类型,但似乎没有什么帮助。最好的方法是如何在JSX文件中添加类型以在TSX中使用它们?我有很多JS文件,有些甚至由于特定原因无法转换。我已经进行了大量搜索并阅读了很多文章,但似乎找不到任何具体的解决方法。先感谢您的帮助。
2个回答

3
  1. 在你所有代码文件所在的根目录中创建一个global.d.ts文件
  2. 在文件中编写以下行:

declare module 'path/to/your/js/or/jsx'

现在这些js/jsx文件将作为模块解析,可以在你的typescript代码中导入!享受吧!

编辑:还要确保你的tsconfig.json配置允许你混合使用ts/js。


0

你可以尝试将文件扩展名从 .js 或者 .jsx 改为 .tsx。TypeScript 应该是 JavaScript 的超集。

另外,也可以参考这个 之前的问题


默认情况下,TS是JS的超集,但这并不总是正确的,因为一些项目使用严格的TS,并在错误时构建失败。 - aaaidan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接