Я создаю в своем приложении интерфейс, имеющий следующую структуру:
export interface Tab {
name: string;
selected: boolean;
html?: string;
component?: any; // this is a reference to a Angular Component, eg. PhotosComponent, DashboardComponent
}
Однако мне не нравится использовать тип «любой» в моем интерфейсе. component в этом случае может быть любым угловым компонентом в моем приложении, поэтому мне нужен какой-то тип для угловых компонентов. Сначала я попробовал использовать:
import { ComponentRef } from '@angular/core';
export interface Tab<T = any> {
name: string;
selected: boolean;
html?: string;
component?: ComponentRef<T>;
}
Однако это приводило к ошибкам машинописного текста во всем моем приложении, поэтому я подумал, прочитав некоторые документы, я мог бы использовать Type, например
import { Type } from '@angular/core';
export interface Tab<T = any> {
name: string;
selected: boolean;
html?: string;
component?: Type<T>;
}
Но часть меня считает, что это такой же общий, как any. Есть ли определенный тип для угловых компонентов?
Любой совет будет принят во внимание.





Отвечает ли это на ваш вопрос? Тип угловых компонентов