Data la seguente classe:Tipi instantiating generici
class Datum {}
ricevo un messaggio di errore (error TS2304: Cannot find name 'T'
) quando provo a fare quanto segue:
class Data<T extends Datum> {
datum: T
constructor() {
this.datum = new T()
}
}
Allora provo a fare questo, ma io anche un messaggio di errore (Type 'Datum' is not assignable to type 'T'
):
class Data<T extends Datum> {
datum: T
constructor() {
this.datum = new Datum();
}
}
Quest ione: Non è possibile istanziare il tipo vincolato T? La mia ipotesi era che poiché T è vincolato in modo tale che deve estendere Datum
, sarei in grado di fare datum: T = new Datum()
.