Používanie typov tried v generikách v TypeScript
Ako generický typ je možné použiť
aj triedy. Len je potrebné zadať typ triedy
pomocou jej konštruktora. Preto
namiesto parametra type:T musíme
zadať type: {new(): T;}. Urobme
funkciu, ktorá naopak
vytvorí nového používateľa z triedy User:
function getUser <T> (type: { new (): T; }): T {
return new type();
}
class User {
constructor() {
console.log('You create a new user!');
}
}
let user: User = getUser(User);
Výsledok vykonaného kódu:
'You create a new user!'