Я использую Ant Design.
У меня есть два компонента. Активности (Step of Stepper) и ActivityForm. В деятельности я могу добавить деятельность. Каждое занятие - это форма.
Мне нужно проверить все формы, когда пользователь нажимает «Далее». Чтобы проверить все формы, мне нужно иметь все формы в родительском, а затем я могу их итерировать.
Ant design предоставляет декоратор, который вводит реквизит. В частности, мне нужен this.props.validateForm.
ActivityForm:
render() {
return (
<Form key={form_id}>
...
</Form>)
}
Деятельность
AddActivity:
const activity = (
<Collapse.Panel header={'Activity ' + id} key={id}>
<ActivityForm {...this.props} />
</Collapse.Panel>
);
this.setState({
activities: [...this.state.activities, activity]
})
визуализация:
return (
<div>
<div>
<Collapse} accordion>
{this.state.activities}
</Collapse>
</div>
<div>
<Button type="primary">
Next
</Button>
</div>
)
}