마지막으로 폼 제출을 처리하는 방법을 배워봅시다. submit() 함수를 사용해서 폼이 유효할 때 비동기 작업을 실행하고, 폼에 오류가 있을 때 제출 버튼을 비활성화하는 방법을 배웁니다.
이번 실습에서는 다음 내용을 배웁니다:
폼을 완성해 봅시다!
-
submit 함수 불러오기
@angular/forms/signals에서submit함수를 불러옵니다: -
onSubmit 메서드 추가하기
컴포넌트 클래스에 폼 제출을 처리하는
onSubmit()메서드를 추가합니다:onSubmit(event: Event) { event.preventDefault(); submit(this.loginForm, async () => { const credentials = this.loginModel(); console.log('Logging in with:', credentials); // Add your login logic here }); }submit()함수는 폼이 유효할 때만 비동기 콜백을 실행합니다. 폼의 제출 상태도 자동으로 처리합니다. -
제출 핸들러를 폼에 바인딩하기
템플릿에서
onSubmit()메서드를 폼의 submit 이벤트에 바인딩합니다:<form (submit)="onSubmit($event)"></form> -
폼이 유효하지 않을 때 버튼 비활성화하기
폼이 유효하지 않으면 제출 버튼이 비활성화되도록 수정합니다:
<button type="submit" [disabled]="loginForm().invalid()">Log in</button>폼에 유효성 검사 오류가 있으면 제출할 수 없게 합니다.
축하합니다! 시그널 폼으로 로그인 폼을 완성했습니다.
배운 내용을 정리하고 심화 주제를 살펴볼까요? 다음 단계로 이동하세요!