Angular 组件循环中的变量

Angular variable in component loops

在我更改我在循环中使用的组件的 class 内的 属性 的值后,它立即重置为原始值。 如果我在 *ngFor.

之外单独使用该组件,则不会发生这种情况

例如,我有以下组件:

export class CartProductComponent implements OnInit {
  loading = false;
    
  ...

  changeQuantity(change: number) {
    this.loading = true;
    ...
  }
}

就是这样使用的:

<app-cart-product *ngFor="let product of products" [product]="product"></app-cart-product>

调用 changeQuantity 后,值立即重置为 false

好吧,您遇到的问题是预期的行为,ngForOf 如果检测到更改并且提供的参考对象不相同,将重新生成视图。 尝试使用 trackBy