8

TypeScript でコールバックの配列をどのように宣言しますか?

単一のコールバックは次のようになります。

var callback:(param:string)=>void = function(param:string) {};

したがって、コールバックの配列は次のようになります。

var callback:(param:string)=>void[] = [];

ただし、コールバックの配列、または void の配列を返す単一のコールバックを意味する可能性があるため、あいまいさが生じます。

TypeScript プレイグラウンドでは、それは void の配列であると見なされます。だから、私の次のことは括弧で囲むことでした:

var callback:((param:string)=>void)[] = [];

しかし、それもうまくいきません。

他のアイデアはありますか?

4

1 に答える 1

17

次のように、完全な型リテラル構文形式を使用する必要があります。

var callback:{(param:string): void;}[] = [];

これはちょっと醜いです。必要に応じて、最初に名前を付けることができます。

interface fn {
    (param: string): void;
}
var callback2: fn[] = [];
于 2013-03-27T22:30:04.450 に答える