首页 > 解决方案 > React,Typescript - 找不到模块...或其相应的类型声明

问题描述

我在 vs 代码中使用 create-react-app 和 yarn 2 创建了一个新项目。编辑器在导入每个已安装的库时会抛出错误,如下所示:

找不到模块“反应”或其相应的类型声明。

该项目编译并成功运行,但错误仍然存​​在。当我将文件的扩展名更改为.js.jsx时。ts.tsx,错误消失。我应该如何解决打字稿文件的这个问题?

标签: reactjstypescriptvisual-studio-codecreate-react-appyarnpkg

解决方案


您需要为您安装的库安装类型。通常你应该这样做:

npm install @types/libName // e.g. npm install @types/react-leaflet

有时, DefiniteTyped存储库中没有可用的类型,您会遇到npm ERR! 404 Not Found: @types/my-untyped-module@latest. 在这种情况下,您可以做几件事:

1-decs.d.ts在项目的根目录中创建一个文件并在其中写入:

    declare module "libName" // e.g declare module 'react-leaflet'

2-或简单地使用以下方法抑制错误@ts-ignore

// @ts-ignore  
import Map from 'react-leaflet'

3-或者你可以帮自己和其他人一个忙,在DefiniteTyped repo 中添加库类型。

如果还是不行,我首先建议你使用最新版本的 Typescript。如果你这样做了,那么关闭你的编辑器,删除node_modules文件夹并再次安装依赖项(npm installyarn install)并再次检查它。


推荐阅读