2016-08-30 6 views
0

JavascriptプロジェクトをTypescriptに移植しようとしています。私のような名前の依存関係があります。@myscope/utilsどこにプライベートスコープのnpmモジュールのd.tsを追加するのですか?

次のように、このからファイルをTSファイルにインポートされます。

src/subfolder/something.ts(12,23): error TS2307: Cannot find module '@myscope/utils/date'. 
:私はこれをコンパイルしようとすると

import date = require('@myscope/utils/date'); 

を私は次のエラーを取得します

このようなプライベートモジュールのために私自身のタイピングを追加するにはどうしたらいいですか?

答えて

2

私はこれを自分自身で解決することができました。 私はモジュールを解決するために取得するための鍵はにあるwriting declaration files

上の情報というパッケージのフル・パスの名前でモジュールを宣言します。モジュールのindex.d.tsファイルを作成しました。filesセクションにtsconfig.jsonのセクションを追加しました。

ファイルには、次の宣言に含ま:

declare namespace date { 
    function now(): number; 
} 

declare module "@myscope/utils/date" { 
    export = date; 
} 

必要はないがが、私はタイピングのように私の輸入がない構造。私はアプリケーションの残りの部分を移植した後、後で簡単にすることができます。 utilsのパスのない日付部分がない

mytypings/index.d.ts 
mytypings/modules/@myscope/utils/index.d.ts 

注:

は、私は、次のファイルを作成しました。

mytypings/index.d.tsは、mytypings/modules/@myscope/utils/index.d.tsの参照パスを含み、次にtsconfig.jsonのセクションに追加されます。

同じように他のライブラリを追加する予定です。

関連する問題