[angular] Angular 폼 템플릿 폼 전환
폼 템플릿 사용
Angular에서 폼을 만들기 위해 먼저 ReactiveFormsModule
를 import 해야 합니다. 그런 다음, HTML 템플릿에서 폼을 생성하고 유효성 검사를 수행할 수 있습니다.
import { ReactiveFormsModule } from '@angular/forms';
@NgModule({
imports: [
ReactiveFormsModule
]
})
export class AppModule { }
폼을 생성하기 위해 HTML 템플릿에서 form
요소를 사용합니다. 이 form
요소 내에 input
, select
, textarea
등의 폼 요소를 추가하여 폼을 만들 수 있습니다. 이때 formGroup
디렉티브를 사용하여 폼과 연결합니다.
<!-- form 템플릿 -->
<form [formGroup]="myForm">
<input formControlName="name">
<button>Save</button>
</form>
formControlName
디렉티브를 사용하여 각 입력 요소를 폼 컨트롤에 연결합니다.
폼 전환
폼 전환은 사용자가 입력을 변경할 때 실시간으로 유효성을 검사하고 상태를 전환하는 기능을 제공합니다. Angular에서 폼 전환을 구현하려면 다음 단계를 수행합니다.
- Angular 폼 모듈에서
FormControl
을 import 합니다.
import { FormControl, Validators } from '@angular/forms';
- 각 입력 필드에 대해
FormControl
을 생성하고 유효성 검사를 추가합니다.
myForm = new FormGroup({
name: new FormControl('', Validators.required)
});
- 템플릿에서 유효성 검사를 기반으로 UI를 변경합니다.
<form [formGroup]="myForm">
<input formControlName="name" [class.error]="myForm.get('name')?.invalid && myForm.get('name')?.touched">
<div *ngIf="myForm.get('name')?.invalid && myForm.get('name')?.touched">Name is required</div>
<button>Save</button>
</form>
위 예제에서는 input
요소에 error
클래스를 추가하여 유효성 검사에 실패한 경우 시각적으로 표시할 수 있습니다. 또한, 오류 메시지를 표시하기 위해 *ngIf
디렉티브를 사용했습니다.
이제 Angular에서 폼 템플릿을 사용하여 폼을 생성하고 유효성을 확인하며, 폼 전환을 구현하는 방법을 알아보았습니다. 사용자가 입력을 변경할 때 실시간으로 유효성을 확인하여 더 나은 사용자 경험을 제공할 수 있습니다.