Form Validation Patterns
Client-side form validation patterns used in Gauzy.
Overview
Gauzy uses Angular Reactive Forms with custom validators for consistent form validation across the application.
Standard Form Setup
@Component({ ... })
export class CreateTaskComponent implements OnInit {
form: FormGroup;
constructor(private fb: FormBuilder) {}
ngOnInit() {
this.form = this.fb.group({
title: ['', [Validators.required, Validators.maxLength(255)]],
description: [''],
projectId: ['', Validators.required],
status: ['TODO', Validators.required],
priority: ['MEDIUM'],
dueDate: [null],
assignees: [[]],
});
}
onSubmit() {
if (this.form.invalid) {
this.form.markAllAsTouched();
return;
}
this.taskService.create(this.form.value);
}
}