2017-09-16 18 views
0

したがって、react-reduxをtypescriptで使用しようとしています。これは私がをインストールを行う際に、私のpackage.json今すぐreact、reactdom、およびreact-reduxタイプを一緒に使用すると重複タイプのエラーが発生する

"dependencies": { 
     "@types/react-dom": "15.5.0", 
     "@types/react": "15.0.4", 
     "@types/react-redux": "4.4.39", 
     "axios": "0.16.2", 
     "react": "15.0.0", 
     "react-dom": "15.0.0", 
     "redux": "3.6.0", 
     "react-redux": "5.0.6", 
     "redux-thunk": "2.1.0", 
     "office-ui-fabric-react": "1.0.0" 
    } 

のように見えるものです。複数の反応タイプがインストールされているのがわかります。 @ types/Reactのために一度。それ自身のnode_modulesフォルダ内に@ types/react-redux@ types/react-domのそれぞれの1つがあります。そして、これらのモジュールが内部でインストールするタイプのバージョンは、私のyarn.lockファイルに見られるように非常に異なります。

コンパイルしようとすると、エラーが発生します。
エラーTS2304:名前 'DetailedHTMLFactory'が見つかりません。
以降の変数の宣言は、私はすべてのネストされた@typesを複製し、ちょうど種類/反応@ tehのトップレベルを維持した場合、エラーが消え、同じタイプ

を持っている必要があります。 重複するタイプの問題が表示されないように、これを行うにはどうすればよいでしょうか?

答えて

0

最後に、node_modulesフォルダを除外してこの問題を修正しました。

"node_modules"をtsconfig.jsonの "exclude"セクションに置きます。

1

あなたがyarnを使用しているので、最も簡単な方向はhttps://github.com/yarnpkg/yarn/pull/4105

あなたはどの特定のバージョンを把握しなければならないこと以外は

を参照して、タイピングの特定のバージョンを強制的にpackage.jsonファイルでresolutionsを使用するのが良いかもしれませんこれらのタイピングのお互いに作用します。基本的には@types/react-domの依存関係リストを確認してから、同じバージョンの@types/reactをプロジェクトに含めます。

0

node_modulesフォルダを削除し、yarn cache clearを実行してすべてを再インストールする必要があります。この振る舞いについてのタイプスクリプトレポには問題があります(私は最近、私のサイドプロジェクトの1つでそれに遭遇しました)、この答えを見つけてリンクしようとします。

+0

これは機能しません – Abhik

関連する問題