Osztálytípusok használata generikusokban TypeScript-ben
Általánosított típusként használhatunk
osztályokat is. Csak az osztály típusát kell megadni
a konstruktorával. Ezért
a type:T paraméter helyett
type: {new(): T;}-t kell
megadnunk. Készítsünk egy függvényt, amely
létrehoz egy új felhasználót a User
osztályból:
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);
A kód végrehajtásának eredménye:
'You create a new user!'