Back to questions
Aston
Middle
3
Какие классические подходы к работе с формами в Angular?
Companies where asked
Answer from AI
sobes.tech AI
В Angular есть два классических подхода к работе с формами:
-
Template-driven forms (формы, управляемые шаблоном)
- Используют директивы в шаблоне (
ngModel,ngForm). - Подход проще и подходит для небольших форм.
- Валидация и логика формы описываются в HTML.
- Используют директивы в шаблоне (
-
Reactive forms (реактивные формы)
- Управление формой происходит в компоненте через объекты
FormGroup,FormControl. - Позволяют более гибко управлять состоянием и валидацией.
- Подход лучше для сложных форм с динамическими элементами.
- Управление формой происходит в компоненте через объекты
Пример реактивной формы:
import { FormGroup, FormControl, Validators } from '@angular/forms';
this.form = new FormGroup({
username: new FormControl('', [Validators.required, Validators.minLength(3)]),
email: new FormControl('', [Validators.required, Validators.email])
});
В шаблоне:
<form [formGroup]="form" (ngSubmit)="onSubmit()">
<input formControlName="username">
<input formControlName="email">
<button type="submit">Отправить</button>
</form>
Выбор подхода зависит от сложности задачи и предпочтений команды.