Angular 角度形式总是无效的

Angular 角度形式总是无效的,angular,typescript,angular-reactive-forms,Angular,Typescript,Angular Reactive Forms,我有一个带有ngDatePicker的输入和一个提交按钮,只要表单无效,该按钮就会被禁用 发生的事情是表单总是无效的!我已经打印了无效的表单属性,它是date部分 我不知道为什么它总是给我无效的,甚至是很难的,我在选择日期后打印了表单值,它有一个date控件名 有人知道这个问题吗 以下是我构建表单的方式: this.submitUserForm = formBuilder.group({ email: [null, Validators.required], password: [nul

我有一个带有
ngDatePicker
的输入和一个提交按钮,只要表单无效,该按钮就会被禁用

发生的事情是表单总是无效的!我已经打印了无效的表单属性,它是
date
部分

我不知道为什么它总是给我无效的,甚至是很难的,我在选择日期后打印了表单值,它有一个
date
控件名

有人知道这个问题吗

以下是我构建表单的方式:

this.submitUserForm = formBuilder.group({
  email: [null, Validators.required],
  password: [null, Validators.required],
  firstName: [null, Validators.required],
  lastName: [null, Validators.required],
  date: [null, Validators.required],
  phoneNumber: [null, Validators.required],
  gender: [null, Validators.required],
  roles: [null, Validators.required]
});
这是我的HTML:

<input class="form-control" placeholder="Date of birth" name="dp" ngbDatepicker
      #d_2="ngbDatepicker" formControlName="date" (click)="d_2.toggle()" [maxDate]="maxDateValue"
      onkeydown="return false" (dateSelect)="onEndDateChange($event)">

每当更新日期值时,请尝试调用
updateValue和validity
方法,如下所示

this.submitPerform.get(date.updateValueAndValidity()


这将向所有订阅者发送更改并更新表单状态。

这似乎可疑:[maxDate]=“minDateValue”


似乎你正在将你的minDateValue作为上限,这使得合理的输入显得不合理。

这似乎是可疑的:[maxDate]=“minDateValue”你为什么要使用反应式表单和双向绑定在一起?@vsfDawg显然你是对的。Idk为什么,但即使选择了小于最大日期的日期,它仍然无效。你知道为什么吗?@abhaytripathi你是对的这是一个mistake@vsfDawg请把你的评论作为回答