Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
TypeScript:指定导出类的静态部分的接口?_Typescript - Fatal编程技术网

TypeScript:指定导出类的静态部分的接口?

TypeScript:指定导出类的静态部分的接口?,typescript,Typescript,我尝试使用手册“”部分的技巧为类的静态端(即函数)指定接口: export interface StaticInterface { info: string; } class _X { static info = 'something'; ... } export var X: StaticInterface = _X; 但是当我试图在另一个文件中扩展module.X时,编译器说: error TS2305: Module '"..."' has no exported

我尝试使用手册“”部分的技巧为类的静态端(即函数)指定接口:

export interface StaticInterface {
    info: string;
}
class _X {
    static info = 'something';
    ...
}
export var X: StaticInterface = _X;
但是当我试图在另一个文件中扩展module.X时,编译器说:

error TS2305: Module '"..."' has no exported member 'X'.

下面是一个基于TypeScript手册的工作示例:

module Example {
    export interface ClockStatic {
        new (hour: number, minute: number);
    }

    class Clock {
        currentTime: Date;
        constructor(h: number, m: number) { }
    }

    export var cs: ClockStatic = Clock;
}

var newClock = new Example.cs(7, 30);

导出接口以及类正确实现接口非常重要。

您能分享一个更完整的代码示例吗,这样我就可以看到您在尝试做什么了?您好,关键似乎是接口中的构造函数定义。但是,我想使用的接口也可以由普通实例实现,所以这实际上不起作用。新错误是
无法将“new”与类型缺少调用或构造签名的表达式一起使用。
您可能希望将实例接口和静态接口分开。例如,您可能希望它像jQuery一样工作,其中JQueryStatic接口返回一个实现jQuery接口的实例。那就行了。谢谢