Moment.jsを使用して、TypeScriptプロジェクトのdatetimeオブジェクトを処理しています。私は、タイプがMoment
の値を持つキーを持つオブジェクト型を定義したいと思います。外部型をグローバル.dtsファイルにインポートする方法
ただし、グローバル定義ファイル(test.d.ts
)に以下を追加すると、そのファイル内のどのインターフェイスもプロジェクトのどこにも見つかりません。
import { Moment } from 'moment';
interface Test {
date: Moment;
}
私は.ts
か.tsx
ファイル内のインターフェイスを使用しようとすると、私は、この活字体のエラーを取得:
[at-loader] ./src/<examplefilename>.tsx:91:26
TS2304: Cannot find name 'Test'.
どちらVSCodeの活字体のエラーチェックもTSLintは、コードの問題を示しています。
グローバル定義ファイルで使用する外部モジュールからタイプをインポートするにはどうすればよいですか?
私はtsconfigファイルをチェックします。コンパイラのオプション - typerootsでは@typesパスと入力するパスを – kimy82
@ kimy82にする必要がありますが、問題はないと思います。プロジェクト全体を通して瞬時にインポートすることができますが、プロジェクトの '.d.ts'定義ファイルでインポートすることができません。これは、プロジェクトで' Moment'タイプを使用するグローバルタイプを定義するためです。残りの '.d.ts'ファイルは設定なしで見つけられ、外部のタイプをインポートしようとしない限り動作します。 – keawade
グローバルな 'd.ts'ファイルも' tsconfig.json'プロジェクトに含まれていますか? –