属性“updateModf”没有初始值设定项,并且未在构造函数中明确分配

时间:2021-06-09 17:11:44

标签: angular typescript

我有一个角度反应形式,所以当我用这样的 FormGroup 类型声明一个变量时:

  updateModf:FormGroup;

,IDE 向我显示此错误:

Property 'updateModf' has no initializer and is not definitely assigned in the constructor.

19   updateModf:FormGroup;

2 个答案:

答案 0 :(得分:0)

如错误消息所述,将初始化移动到构造函数。

答案 1 :(得分:0)

当编译器检测到变量在赋值之前已被使用时,就会发生此问题(警告)。

您可以通过以下任一方法为其分配值(在使用之前)来解决此警告:

  • constructor()
  • ngOnInit() (推荐)

解决方案

解决办法如下:

import { Component, OnInit } from '@angular/core';
import { FormBuilder, FormGroup, Validators } from '@angular/forms';

@Component({
  selector: 'app-mod-form',
  templateUrl: `./mod-form.component.html`
})
export class ModFormComponent implements OnInit {
  updateModf: FormGroup;

  constructor(private formBuilder: FormBuilder) {}

  ngOnInit(): void {
    // Create FormGroup with form controls
    this.updateModf = this.formBuilder.group({
      firstname: ['', Validators.required],
      lastname: ['', Validators.required]
    });
  }
}

Sample solution on StackBlitz