Gebruik van klassetypen in generieken in TypeScript
Als generiek type kunnen
ook klassen worden gebruikt. Alleen moet het type klasse
worden opgegeven met behulp van de constructor. Daarom
moeten we in plaats van de parameter type:T
type: {new(): T;} opgeven. Laten we
een functie maken die op zijn beurt
een nieuwe gebruiker aanmaakt vanuit de klasse 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);
Resultaat van de uitgevoerde code:
'You create a new user!'