Есть большое желание написать универсальный класс на основе generic.
Внутри класса я буду создавать generic-переменную. Например так:
export class EditComponents<T> {
componentData: T = new T();
}
Порывшись в интернетах нашел следующий пример:
class ObjectCreator{
static createEntity<TEntity>(type:{new():TEntity;}):TEntity{
return new type();
}
}
И реализация:
export class EditComponents<T> {
componentData: T = ObjectCreator.createEntity<T>(T);
}
Получаем ошибку: 'T' only refers to a type, but is being used as a value here.
Есть ли вариант как решить эту проблему? Спасибо.