2016-11-30 50 views
2

なぜそれが見つからないのか分かりません。typescript: 'react'モジュールが見つかりません

$ 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

どのように反応をインポートしようとしていますか? –

+0

あなたは 'import react = require(" react ");'を試したことがありますか? –

+3

'--traceResolution'で実行された出力は参考になります –

答えて

3

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

4

私は同じ問題がありました。あなただけの@typesをインストールする必要があります。バージョン2.4のよう

npm i -D @types/react 
1

*(ほとんどの場合)、このエラーの責任configエントリは次のとおりです。

"compilerOptions": { 
      ... 
      "moduleResolution": "node" <---------- this entry 
      ... 
} 

私はそれが誰かを役に立てば幸い!

-2
const React = require("react"); 

これで問題が解決しました。

関連する問題