*ngIf undefined error in *ngFor 显示错误响应时

*ngIf undefined error in *ngFor when showing error response

我有一个 Angular 应用程序和一个基于 Laravel 的 API 应用程序。我确实使用 Laravel 中的请求 类 请求验证,并收到 JSON 格式的验证错误。我对输入数组进行了验证,验证消息以以下格式显示:

"validation": {
  "items.0": [
    "item required"
  ],
  "items.1": [
    "item required"
  ]
}

我有一个 ngFor 循环,用于为 items 创建输入字段。 HTML 是

<tr *ngFor="let name of items.controls; index as idx"
   class="form-group">
   <td>
      <p>
         <input [formControlName]="idx" type="text">
      </p>
      <small *ngIf="validationError['items'][idx]" class="text-danger">
          {{validationError['items'][idx]}}
      </small>
   </td>
</tr>

此表单位于模式框中。但是使用这段代码,当我尝试访问打开模式时,它显示 javascript 错误:

ERROR TypeError: Cannot read property '0' of undefined

这是因为只有在单击“提交”时才会填充错误。在此之前没有错误。我如何验证此条件?

您应该瞄准 validationError['items.' + idx] 而不是 validationError['items'][idx]。 该错误来自于您的 validationError 对象

中没有 属性 items