2017-04-11 3 views
2

私はモジュールをインストールします。Angular2で 'crypto'モジュールを使用するには?

import { createHmac } from "crypto"; 

しかし、私はエラーを取得する:私は私のコンポーネントにインポート

npm install --save crypto 

ERROR in -------------- (4,28): Canno t find module 'crypto'.

は私が間違って何をしているのですか?

答えて

3

cryptoのようなサードパーティのライブラリの定義ファイルをインストールする必要があります。そのため、typescriptはその意味を見つけることができます。

私は定義ファイルがあると思う:

npm install --save-dev @types/crypto-js 

その後、あなたのようなモジュールをインポートすることができます:あなたはそのLIBの定義ファイルが見つからない場合、あなたはそれを書くことができます

import * as crypto from "crypto"; 

回避策としてモジュールをanyと宣言できますが、typescriptはメソッドを自動完了できません。

declare var crypto: any; 

と同様にそのメソッドを使用します。私が思う

crypto.createHmac.. 
+0

しかし、[暗号-JS](https://www.npmjs.com/package/crypto-js)とは異なるモジュールです[ crypto](https://www.npmjs.com/package/crypto)を参照してください。 – johnerfx

+0

@johnerfxああ、フィードバックのおかげで、モジュールを宣言したり、自分で定義ファイルを作成したりすることができます。私は答えを例で編集します。 – echonax

+0

答えに感謝しますが、私はまだそれを動作させることはできません:エラーTypeError:crypto.createHmacは関数ではありません – johnerfx

関連する問題