Användning av klassTyper i generics i TypeScript
Som generisk typ kan man även använda
klasser. Men man måste ange klassens typ
genom dess konstruktor. Därför
istället för parametern type:T måste vi
ange type: {new(): T;}. Låt oss
skapa en funktion som i sin tur
skapar en ny användare från 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 av den utförda koden:
'You create a new user!'