Brug af klassetyper i generics i TypeScript
Som en generisk type kan du også bruge
klasser. Du skal blot angive klassens type
ved hjælp af dens konstruktør. Derfor
skal vi i stedet for parameteren type:T
angive type: {new(): T;}. Lad os
oprette en funktion, som til gengæld
vil oprette en ny bruger fra klassen 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);
Resultatet af udført kode:
'You create a new user!'