定義 (base.d.ts) を持つクラスと、定義を持たず、同じ名前空間を持つ単なる Typescript クラス (EventDispatcher.ts) であるクラスを使用すると、問題が発生します。
以下は有効な構文ではないため、全体として、これらのエラーの間で立ち往生しています。
declare var Acme.Ajax: AcmeAjaxInterface;
私がやろうとしていること:
私のbase.d.tsファイルには以下が含まれています:
interface AcmeInterface{
Ajax: AcmeAjaxInterface;
}
interface AcmeAjaxInterface{
call(...parameters: any[]);
}
私の EventDispatcher.ts には以下が含まれます:
module Acme {
expost class EventDispatcher{}
}
次のファイルで両方を使用しようとすると:
///<reference path="base.d.ts" />
///<reference path="EventDispatcher.ts" />
Acme.Ajax.Call():
Acme 変数が宣言されていないため、エラーが発生します。
TS2094: The property 'Ajax' does not exist on value of type 'Acme'.
ただし、次を追加すると:
declare var Acme : AcmeInterface;
エラーが発生します:
TS2000: Duplicate identifier 'Acme'.
これらのエラーの発生を防ぐ方法は何ですか?