当使用具有定义(base.d.ts)的类和一些没有定义的类(EventDispatcher.ts)时,我遇到了一个问题,它们只是具有相同命名空间的 Typescript 类。
总而言之,我被困在这些错误之间,因为以下语法无效:
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'.
防止这些错误发生的方法是什么?