2016-11-04 32 views
4

Angular1.5 + Typescriptを組み合わせようとしています。 インストールに必要なタイプ:AngularJs + Typescript:エラーTS2307:モジュール 'angular'を見つけることができません

npm install @types/angularjs

それでもエラーが表示されます。

error TS2307: Cannot find module 'angular'

は、すでにさまざまなオプションを試してみました:

import 'angular'; 
import 'angularjs'; //that is name inside @types 
import angular from 'angularjs'; 
import * as angular from 'angular'; 

私が使用しています:

"ts-loader": "1.0.0", 
"typescript": "2.0.7", 
"webpack": "1.13.3", 
"webpack-dev-server": "1.16.2" 
をできるだけ多くの

{ 
    "compilerOptions": { 
    "target": "es5", 
    "noImplicitAny": false, 
    "sourceMap": false, 
    "lib": ["es6", "dom"], 
    "typeRoots": ["./node_modules/@types"] 
    }, 
    "exclude": ["node_modules"] 
} 

すでに簡素化のWebPACK設定:

のTSconfigはかなり標準です のvarのWebPACK =新しい必要( 'WebPACKの');

module.exports = { 
    context: __dirname + '/src', 
    entry: './index.ts', 
    output: { 
    path: './dist', 
    filename: 'app.bundle.js' 
    }, 
    module: {loaders: [{test: /\.tsx?$/, loader: 'ts-loader'},]}, 
    resolve: { 
    extensions: ['', '.webpack.js', '.web.js', '.ts', '.tsx', '.js'], 
    }, 

    plugins: [new webpack.NoErrorsPlugin()], 

    devtool: 'source-map', 

    devServer: { 
    contentBase: './dist', 
    historyApiFallback: true, 
    inline: true 
    } 
}; 

そして私はまた、唯一のタイプのインポートに焦点を当てることindex.ts自体を、簡素化:

import * as angular from 'angular'; 
angular.module('testmodule', []); 

UPD:tsconfig.json。 typeRootsオプションが追加されました。

は今、新たなエラーを取得:

ERROR in .../node_modules/@types/angularjs/angular-mocks.d.ts (6,26): error TS2307: Cannot find module 'angular'.

ERROR in .../node_modules/@types/angularjs/angular-mocks.d.ts (65,49): error TS2304: Cannot find name 'IServiceProvider'.

ERROR in .../node_modules/@types/angularjs/angular-mocks.d.ts (122,62): error TS2304: Cannot find name 'IScope'.

ERROR in .../node_modules/@types/angularjs/index.d.ts (66,43): error TS2304: Cannot find name 'JQuery'.

+0

ディレクトリ構造とtsconfigファイルを表示できますか。また、WebpackやSystemJSのようなツールを使用している場合は、configsも表示されます。 –

+0

ご意見ありがとうございました。私の質問が更新されました。 –

+0

tsconfigの '' typeRoots ":[" ./node_modules/@types "]'を '' compilerOptions "'に追加してください。 –

答えて

3

コマンドラインでこれを実行する場合、それは問題を修正する必要があります。この修正プログラムについての迷惑な何

npm install @types/angular 

あなたは修正する必要がありpackage.json 以内にあなたの依存関係に上記の代わりにを以下を追加した場合、何らかの理由でそれは...しかし、あなたのpackage.jsonを更新していないということですパッケージとミラーリングしてください。

"@types/angular": "1.6.5", 
"@types/jquery": "2.0.40", 
+4

'何らかの理由で何らかの理由でpackage.json'が更新されません - package.jsonに保存するために' --save'フラグを追加してください。 –

+0

npm5から、npmはデフォルトで--saveします。 – Prashant

関連する問題