Как присвоить значение переменной цикла *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 }"?

Другие вопросы по тегам