Je ne comprends pas pourquoi il ne le trouve pas.
$ 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
Importation dans un fichier composant.
// src/components/component.tsx
import * as React from "react";
Ce qui donne?
si vous n'utilisez pas TypeScript 2.1, vous devez le mettre à niveau. il semble que vous utilisez une version 2.x des @types que vous y avez.
voici un travail tsconfig.json
fichier que j'utilise actuellement:
{
"compilerOptions": {
"target": "es6",
"module": "commonjs",
"moduleResolution": "node",
"noResolve": false,
"noImplicitAny": false,
"removeComments": true,
"sourceMap": true,
"allowJs": true,
"jsx": "react"
},
"exclude": [
"./node_modules/**/*"
]
}
cela fait quelques jours que j'ai résolu le même problème que vous aviez, mais je pense que la clé ici est le "moduleResolution": "node"
et "allowJs": true
.
J'ai eu le même problème. Il vous suffit d'installer @types:
npm i -D @types/react
Comme sur la version 2.4. * L'entrée de configuration responsable de cette erreur (dans la plupart des cas) est:
"compilerOptions": {
...
"moduleResolution": "node" <---------- this entry
...
}
J'espère que ça aide quelqu'un!