Middle
Kako opisati klasu u TypeScript-u koju kreiramo u funkciji i vraćamo napolje?
sobes.tech АИ
Одговор од АИ
// Определяем тип для экземпляра класса
type MyClassInstance = {
myProperty: string;
myMethod(): void;
};
// Тип для конструктора класса
type MyClassConstructor = new () => MyClassInstance;
// Функция, которая создает и возвращает класс
function createAndReturnClass(): MyClassConstructor {
// Здесь создаем класс анонимно
return class {
myProperty: string = "Привет из класса";
myMethod() {
console.log(this.myProperty);
}
};
}
// Получаем класс из функции
const DynamicClass = createAndReturnClass();
// Создаем экземпляр динамического класса
const instance: MyClassInstance = new DynamicClass();
// Используем экземпляр
instance.myMethod();