Как присвоить значение переменной цикла *ngFor для свойства @Input углового динамического компонента?
Вот полное переписывание вопроса, потому что, кажется, он был плохо написан.
Я пытаюсь использовать этот пакет:
https://www.npmjs.com/package/ng-dynamic-component
для динамического компонента @Input() с переменной цикла ngFor.
Автор пакета ответил на вопрос, который, кажется, касается моего точного случая. Однако я не понимаю, как это работает, как предложено в ответе:
<div *ngFor="let tabComponent of tabComponents()">
<ndc-dynamic
[ndcDynamicComponent]="tabComponent.component"
[ndcDynamicInputs]="{ tabItem: tabComponent }"
</ndc-dynamic>
</div>
TabComponents tabContainerComponent -array выглядит так:
public tabComponents: ITabComponent[] = [
{ name: 'SelectedObjects', icon: 'selected-objects', isSelected: true, component: SelectedObjectsComponent },
{ name: 'DummyComponent1', icon: 'pin', isSelected: false, component: DummyComponent },
{ name: 'DummyComponent2', icon: 'selected-objects', isSelected: false, component: Dummy2Component }
]
и все компоненты динамической вкладки имеют:
@Input() tabItem: any;
В соответствии с документацией я должен добавить ndcDynamicInputs: входные данные, как показано ниже (и не встроенный в HTML:
<div *ngFor="let tabComponent of tabComponents()">
<ndc-dynamic
[ndcDynamicComponent]="tabComponent.component"
[ndcDynamicInputs]="inputs"
</ndc-dynamic>
</div>
Проблема в том, как определить массив входных данных в классе ts:
inputs = {
// how to assign tabComponent?
tabItem: ??
}
Итак, как назначить значение переменной Как присвоить значение переменной цикла *ngFor для свойства @Input углового динамического компонента?
1 ответ
Вместо [ndcDynamicInputs]="input", вы пробовали [ndcDynamicInputs]="{ tabItem: tabComponent }"?