본문 바로가기

JavaScript/Angular-Error

[Angular 에러] formGroup expects a FormGroup instance. Please pass one in. 원인 및 해결

해당 에러가 발생할 경우

1. html 에서 form group 을 form 으로 선언 하지 않은 경우

2. ts 에서 group 을 form 으로 선언 하지 않은 경우

 

원인 :

registerForm: FormGroup;
  registerPayload: RegisterPayload;

  constructor(
    private formBuilder: FormBuilder,
    private authService: AuthService
  ) {
    this.formBuilder.group({
      username: "",
      email: "",
      password: "",
      confirmPassword: ""
    });

내 코드의 경우 form 을 선언했지만, constructor 의 group 을 form 으로 넘기지 않았다.

 

해결 :

  registerForm: FormGroup;
  registerPayload: RegisterPayload;

  constructor(
    private formBuilder: FormBuilder,
    private authService: AuthService
  ) {
    this.registerForm = this.formBuilder.group({
      username: "",
      email: "",
      password: "",
      confirmPassword: ""
    });

 

위 처럼 선언한 registerForm 으로 대입만 해주면 된다.

 

 

html 의 form tag 의 에러의 경우

 

https://stackoverflow.com/questions/38444778/formgroup-expects-a-formgroup-instance

 

위 내용을 참조 하면 된다.