【问题标题】:ERROR TypeError: Cannot read property 'invalid' of undefined错误类型错误:无法读取未定义的属性“无效”
【发布时间】:2019-06-26 18:58:25
【问题描述】:
  1. 我正在使用嵌套的 FormGroup,并且在 html 中 FormGroup 是父级 formGroup 和技能是嵌套表单,但在验证控件上是 没有找到。任何人都可以帮助解决这个问题。提前致谢。

    ngOnInit() {
        this.studentForm = new FormGroup({
          fullName: new FormControl('', Validators.required),
          email: new FormControl('', [Validators.required, Validators.email]),
          skills: new FormGroup({
            skillName: new FormControl(),
            ExperienceInYears: new FormControl(),
            Proficiency: new FormControl()
    
          })
        })
    
    
    html ---
    <div formGroupName='skills'>
              <div class="form-group">
                <label for="Email1">Skill Name</label>
                <input type="text" class="form-control" formControlName='skillName' placeholder="Skill Name">
                <div *ngIf="studentForm.controls['skills'].controls[skillName].invalid && (studentForm.controls['skills'].controls[skillName].dirty ||
    

    studentForm.controls['skills'].controls[skillName].touched)" class="警报警报-危险"> 技能名称是必需的。

    validation is not working
    
    ERROR TypeError: Cannot read property 'invalid' of undefined
    
    can any one help
    

【问题讨论】:

  • 感谢您的回答,错误已解决,但嵌套的 FormGroup 验证不起作用

标签: angular


【解决方案1】:

我猜你忘了把 skillName 用引号括起来:

studentForm.controls['skills'].controls[skillName]
                                            \/
                                       ['skillName']

【讨论】:

  • 对于那个\/ 符号!
  • 感谢您的回答,错误已解决,但嵌套的 FormGroup 验证不起作用
  • 你能在 stackblitz 中重现这个问题吗?
  • 嵌套 FormGroup 验证不起作用..请帮助
  • 将 Validators.required 添加到 SkillName 控件。您的表单定义中不需要它
猜你喜欢
  • 2020-03-29
  • 2018-04-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-03
  • 2021-11-22
  • 2018-07-12
  • 2021-12-16
相关资源
最近更新 更多