2016-02-17 33 views
2

我发现下面的接口定义angular2/src/core/di/decorators.ts为什么angular2以这种方式声明接口?

export interface InjectFactory { 
    (token: any): any; 
    new (token: any): InjectMetadata; 
} 

我想知道这是什么应该做的?为什么声明接口无论是作为functionclass?(顺便说一句,我知道是什么意思interface,我只是不知道为什么,在这两个functionnew constructor

是否有任何理由背后,为什么这是一个很好的达到目标?

回答

0

在打字稿规范object types以下部分有使用JQuery作为为什么这可能会派上用场

样本您可能需要一个很好的解释/需要使用实现上述接口既作为一个功能或对象一个常规的对象。下面是从示出了这种jquery对象 '$' 上面的链接样品:

$.get("http://example.com", 
    function (data: string) { 
     $("div").text(data); 
    } 
); 

注的。获得$()和$( “DIV”)的使用。

这样的接口允许我们描述现有的javascript对象,这些对象很不适合打字对象/类范例。

相关问题