如何操作其值为来自 ngFor 的属性的 ngmodel

how to manipulate an ngmodel whose value is an attribute that comes from an ngFor

我想知道如何操作具有来自 ngFor 的属性作为 ngModel 的输入,并更改其在组件中的值,接下来我展示我的代码

HTML

FRONT

想法是这个 [(ngModel)] = "item.days" 根据你点击的按钮进行加减,但我不知道如何引用它来操作它组件函数,因为它应该动态变化,

我试图验证输入不小于 0 但它对我不起作用,所以我选择隐藏输入。 如果有人能帮助我,我将不胜感激,问候。

您需要将索引传递给更改值函数以了解要更改的值。更改数组中的值将触发 angular 的更改检测并更新 html.

中的 ngModel
changeValue(value, index): void {
    this.complexities[index].days += value;

    if (this.complexities[index].days < 0) {
      this.complexities[index].days = 0;
    }
  }

那么你的按钮可以看起来像

<button
  type="button"
  class="btn btn-default btn-xs rounded"
  (click)="changeValue(-1, i)">

并为另一个传递+1。验证输入的一种简单方法是将以下行添加到 标记

(change)="changeValue(0, i)"

这不会更改天数,但如果输入负值,会将值设置为 0。