Angular 为什么验证错误不存在';看不见

Angular 为什么验证错误不存在';看不见,angular,Angular,只是练习一下,我有这样一个表单:它确实生成了控制台消息,所以至少接线是正确的,但是当我没有在教科书中键入任何内容并点击submit时,它不会显示验证错误 <form [formGroup]="myForm" (ngSubmit)="onSubmit(myForm.value)"> <div> <label for="skuInput">SKU</label> <input id="skuIn

只是练习一下,我有这样一个表单:它确实生成了控制台消息,所以至少接线是正确的,但是当我没有在教科书中键入任何内容并点击submit时,它不会显示验证错误

  <form [formGroup]="myForm"
        (ngSubmit)="onSubmit(myForm.value)">
    <div>
      <label for="skuInput">SKU</label>
      <input id="skuInput" type="text" [formControl]="myForm.controls['sku']"   placeholder="sku">
    </div>
    <button type="submit">Submit</button>
  </form>

最新版本使用
formControlName
而不是
formGroup

 <form [formGroup]="myForm"
        (ngSubmit)="onSubmit(myForm.value)">
    <div>
      <label for="skuInput">SKU</label>
      <input id="skuInput" type="text" formControlName="sku" placeholder="sku">
    </div>
    <p *ngIf="myForm.controls['sku'].errors.required">Field is required<p>
    <button type="submit">Submit</button>
  </form>
此外,如果您希望访问字段值,只需使用:

this.myform.get('sku').value; //====> Enter field name, in this case sku
类似地,要动态设置字段的值,可以执行以下操作:

this.myform.get('sku').setValue('Sku2'); 

现在应该可以了。要了解有关表单验证的更多信息,请访问Angular的官方网站。

最新Angular版本使用
formControlName
而不是
formGroup

 <form [formGroup]="myForm"
        (ngSubmit)="onSubmit(myForm.value)">
    <div>
      <label for="skuInput">SKU</label>
      <input id="skuInput" type="text" formControlName="sku" placeholder="sku">
    </div>
    <p *ngIf="myForm.controls['sku'].errors.required">Field is required<p>
    <button type="submit">Submit</button>
  </form>
此外,如果您希望访问字段值,只需使用:

this.myform.get('sku').value; //====> Enter field name, in this case sku
类似地,要动态设置字段的值,可以执行以下操作:

this.myform.get('sku').setValue('Sku2'); 

现在应该可以了。要了解更多关于表单验证的信息,请访问Angular的官方网站。

您需要添加一些类似的
您需要添加一些类似的
感谢“formControlName”,我更喜欢它。我正在学习的旧风格我也不喜欢。这更好。。。。但什么是“价值。地位”,这很酷,不用担心!状态用于检查表单状态。要获得更高的可读性,请尝试使用form.status,它将根据已完成或未完成的验证返回valid和invalid。。。为了使方法有效,我还必须将其更改为onSubmit(表单)。。它以前是form.values以获取有关表单验证的详细信息。谢谢你的“formControlName”,我更喜欢它。我正在学习的旧风格我也不喜欢。这更好。。。。但什么是“价值。地位”,这很酷,不用担心!状态用于检查表单状态。要获得更高的可读性,请尝试使用form.status,它将根据已完成或未完成的验证返回valid和invalid。。。为了使方法有效,我还必须将其更改为onSubmit(表单)。。它以前是form.values以获取有关表单验证的详细信息。退房