我不明白为什么找不到它。
$ cat tsconfig.json
{
"compilerOptions": {
"sourceMap": true,
"target": "es6",
"jsx": "react",
"types": [
"lodash",
"react",
"react-dom"
]
}
}
$ tree node_modules/@types
node_modules/@types/
├── lodash
│ ├── README.md
│ ├── index.d.ts
│ ├── package.json
│ └── types-metadata.json
├── react
│ ├── README.md
│ ├── index.d.ts
│ ├── package.json
│ └── types-metadata.json
└── react-dom
├── README.md
├── index.d.ts
├── package.json
├── server.d.ts
└── types-metadata.json
导入组件文件。
// src/components/component.tsx
import * as React from "react";
是什么给出了?
答案 0 :(得分:10)
我有同样的问题。你只需要安装@types:
npm i -D @types/react
答案 1 :(得分:7)
如果您不使用typescript 2.1,则应升级到它。看起来你正在使用你所拥有的@types的2.x版本。
这是我正在使用的tsconfig.json
文件:
{
"compilerOptions": {
"target": "es6",
"module": "commonjs",
"moduleResolution": "node",
"noResolve": false,
"noImplicitAny": false,
"removeComments": true,
"sourceMap": true,
"allowJs": true,
"jsx": "react"
},
"exclude": [
"./node_modules/**/*"
]
}
自从我解决了您遇到的同一问题以来已经过了几天,但我认为这里的关键是"moduleResolution": "node"
和"allowJs": true
。
答案 2 :(得分:4)
有同样的问题。就我而言,禁用deno extension解决了这个问题。某种程度上搞乱了进口。
答案 3 :(得分:3)
与版本2.4。*一样,此错误的责任配置条目(在大多数情况下)是:
"compilerOptions": {
...
"moduleResolution": "node" <---------- this entry
...
}
我希望它有所帮助!
答案 4 :(得分:1)
为解决打字稿“ 无法找到模块'react'”(来自eslint规则)
您需要安装 @ types / react :
$ npm i -D @types/react
或
$ yarn add -D @types/react
然后在您的 .eslintrc文件中添加扩展数组中的react插件:
...
extends: [
'plugin:react/recommended',
...
],
希望所有的:D
都会更清晰答案 5 :(得分:0)
还要检查是否存在您的node_modules。如果是,并且仍然遇到此问题,请删除它,然后通过运行npm install重新安装它。这为我解决了问题
答案 6 :(得分:0)
如果您已安装@types/react
,但仍然无法正常工作,建议您使用Typescript
的最新版本,然后关闭IDE /编辑器,删除node_modules
文件夹,并运行npm install
或yarn install
并再次检查。它应该现在可以工作。
答案 7 :(得分:0)
我已经解决了类型相同的问题:
npm i -D @types/react or yarn add @types/react
更多关于我的tsconfig.json的信息,“ jsx”参数在纱线启动时自动从“反应”更改为“反应-jsx”。 可以帮助我的是我的tsconfig:
{
"compilerOptions": {
"jsx": "react",
"target": "es6",
"lib": [
"dom",
"dom.iterable",
"esnext"
],
"skipLibCheck": true,
"esModuleInterop": true,
"allowSyntheticDefaultImports": true,
"strict": true,
"forceConsistentCasingInFileNames": true,
"noFallthroughCasesInSwitch": true,
"module": "esnext",
"moduleResolution": "node",
"resolveJsonModule": true,
"isolatedModules": true,
"noEmit": true,
"allowJs": true,
"removeComments": true,
"sourceMap": true,
"noResolve": false,
"noImplicitAny": false
},
"include": [
"src",
"./node_modules/**/*"
]
}
答案 8 :(得分:0)
在撰写此评论时,我在我的 cmd 上看到一个错误,说我没有安装 typescript。
npm install typescript
它成功了
答案 9 :(得分:0)
npm i @types/react
或 yarn add @types/react
将解决问题。由于缺少反应类型而发生错误
答案 10 :(得分:-3)
const React = require("react");
这解决了这个问题。