导入现有 .jsx 文件时“找不到模块的声明文件”

Jim*_*ode 7 javascript module typescript reactjs tsconfig

(抱歉,如果这是重复的,我找不到任何处理现有 .jsx 文件的问答)

我已经将我的应用程序迁移到打字稿,现在出现了以下错误:

Could not find a declaration file for module '../components/...'. '.../components/....js' implicitly has an 'any' type.ts(7016)

我不想现在就检查整个应用程序并将所有内容都转换为.tsx. 鉴于我现在只想忽略导入问题,我觉得在我的文件中noImplicitAny求助有点过分了。falsetsconfig

有没有更明智的方法来解决这些错误?

Mit*_*tsa 1

您应该为某些不存在的包创建类型。

declare module 'objectname' {
  const content: any;
  export default content;
}
Run Code Online (Sandbox Code Playgroud)

并非所有 javascript 模块都包含其类型。因此,我们需要为我们定义的对象创建类型定义。为第三方定义的最简单方法如上所述。因为 webpack 检查各自的index.d.ts. 这d.ts是您将拥有的对象的类型定义文件。

就您而言,它丢失了,因此您会收到该错误。因此必须使用对象名称创建类型定义文件。或者有时会是扩展。

any指对象内的任何数据类型。您必须亲自接触打字稿接口和类型。

简单的例子