Учитывая следующий класс:инстанцировании Общие типы
class Datum {}
Я получаю сообщение об ошибке (error TS2304: Cannot find name 'T'
), когда я пытаюсь сделать следующее:
class Data<T extends Datum> {
datum: T
constructor() {
this.datum = new T()
}
}
Итак, я стараюсь делать это, но я также получить сообщение об ошибке (Type 'Datum' is not assignable to type 'T'
):
class Data<T extends Datum> {
datum: T
constructor() {
this.datum = new Datum();
}
}
Quest ion: Невозможно создать экземпляр ограниченного типа T? Мое предположение заключалось в том, что, поскольку T ограничено, так что он должен расширять Datum
, я мог бы сделать datum: T = new Datum()
.