Речь идет об Angular с TypeScript.
Я из мира WPF и сейчас начинаю некоторые разработки на Angular.
В моем приложении есть место, где я хочу установитьэлемент управления вкладкой, который содержит все виды «открытых» документов (угловые компоненты). Может быть, я ошибочно оцениваю это, но давайте рассмотрим, есть ли инъекция, содержащая массив TabItem
s, одно из свойств TabItem
- это либо строка класса, фабрика, либо имя типа компонента моего приложения(Будет решено легко).
export class TabItem {
public title : string;
public disabled : boolean;
public active : boolean;
public factory: any; // or class name or object
}
@Injectable()
export class OpenDocumentService {
openTabs: Array<TabItem> = [];
addTab(t:TabItem){ openTabs.push(t); }
}
В wolrd WPF я бы создал предъявителя контента и привязал его к имени или отображаемому объекту.
Что бы я делал в угловом мире. Примечание: Компонент, который должен отображаться, может находиться в другом модуле.
Как я могу * ngFor поверх него и отображать произвольные компоненты при добавлении в службу? (замените ng-contentpresenter)
<tabset>
<tab *ngFor="let tabz of tabservice.openTabs"
[heading]="tabz.titel">
<ng-contentpresenter use={{tabz?.factory}}/>
</tab>
</tabset>