#angular #loops #variables #ngfor
#угловая #циклы #переменные #ngfor
Вопрос:
Сразу после того, как я изменяю значение свойства внутри класса компонента, который я использую в цикле, оно сбрасывается до исходного значения. Этого не произойдет, если я использую компонент отдельно, вне любого *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
.
Комментарии:
1. Спасибо за быстрый ответ, но это было исправлено, выполнив рекомендации Димы С.
Ответ №1:
Что ж, проблема, с которой вы столкнулись, — это ожидаемое поведение, ngForOf
которое восстановит представление, если оно обнаружит изменения, а ссылочный объект, с которым оно поставляется, не совпадает. Попробуйте использовать trackBy
Комментарии:
1. Спасибо. На самом деле это было то, что я искал, что-то вроде Vue
v-bind:key
, но я не знал его эквивалента в Angular.