Я хочу создать многошаговую форму, где каждый шаг - это отдельная вкладка, и пользователь может переходить вперед / назад по форме.Каждая вкладка имеет заголовок, содержимое и кнопки навигации.
В моем компоненте формы у меня есть массив всех компонентов (каждый представляет собой шаг в форме), и я хочу просмотреть его в шаблоне формы,так что каждый шаг имеет одинаковую структуру, и если я хочу изменить эту структуру, я должен только изменить код в цикле, так как он одинаков для всех шагов.
Это массив в form.component.ts :
steps = [
LanguageComponent,
CodeComponent,
HardwareComponent,
SubmissionComponent
]
Или это должно быть:
steps = [
new LanguageComponent,
new CodeComponent,
new HardwareComponent,
new SubmissionComponent
]
?
Это псевдо form.component.html:
<div id="tabs">
<div class="tab" *ngFor="let step of steps" id="{{step.header}}">
{{ step.header }}
<app-step></app-step>
{{ buttons }}
</div>
</div>
Каждый компонент шага имеет свойство заголовка.
Таким образом, чтобы изменить структуру вкладки, яизменить его здесь нужно только один раз, если заголовок и кнопки находятся внутри шаблона каждого компонента, тогда мне придется изменить шаблон каждого компонента, если я хочу изменить структуру вкладки.
Как бы вы это сделали?Есть ли лучший способ достичь этой структуры?
Спасибо!