Ik heb moeite om erachter te komen of het mogelijk is met de schrijfmachine om een statisch getypeerde scala aan functies verklaren.
Bijvoorbeeld, kan ik dit doen:
foo: (data:string) => void = function (data) {};
Maar als ik wil foo om een scala aan functies die een string te nemen en niets terug te keren, hoe doe ik dat?
foo: (data:string) => void [] = [];
Werkt niet, omdat de schrijfmachine denkt dat het een functie die een string neemt en geeft een array van leegte, en het lijkt niet te willen me proberen om de functie tussen haakjes te verpakken.
Iemand een idee?
Antwoord : Met dank aan mohamed hieronder, hier is een voorbeeld dat werkt in de typoscript Playground:
class whatever {
public foo: { (data: string): void; }[] = [];
dofoo() {
for (var i=0; i < this.foo.length; i++) {
this.foo[i](test);
}
}
}
var d = new whatever();
d.foo.push(function(bar){alert(bar)})
d.foo.push(function(bar){alert(bar.length.toString())})
d.dofoo();













