如何在ngIf中给ngFor变量?

时间:2019-05-06 13:45:37

标签: angular ngfor

我有这样的代码:

<span *ngFor="let track_type of model.content_id.track_types">
    <label class="col-3">{{track_type}} Stream ID*:</label>
    <input type="text" name="stream_id_{{track_type}}" class="col-offset-1 col-3" #stream_id="ngModel" placeholder="{{track_type}} Stream ID" required [(ngModel)]="model.stream_id">
    <span *ngIf="stream_id.invalid && (stream_id.dirty || stream_id.touched)" class="col-offset-2 col-5 text-danger">Stream ID is required</span>
    <br>
</span>

有两个问题:

  • 如果我编辑一个文本框,它将影响所有文本框。
  • 无法正确设置表单验证

如何解决这些问题?我尝试查看了 ngTemplateOutlet ,但是它并没有按预期工作。

1 个答案:

答案 0 :(得分:-1)

使用trackByFunction

  trackByFn(index, item) {
    return index; // or item.id
  }

在您的模板中:

<span *ngFor="let track_type of model.content_id.track_types; trackBy: trackByFn">
相关问题