Всем привет. Столкнулся с проблемой, что цикл отрабатывает несколько раз. Сейчас привет пример в коде.
app.component.Html:
<div *ngFor="let item of offers1(); let i = index" >
<button type="button" class="btn btn-secondary" (click)="fetchOffer(2)" >edit</button>
</div>
Ts:
import { Component } from '@angular/core';
import { LogManagerService } from './_modules/LogginService/log-manager.service';
import {Router} from '@angular/router';
import {Offer} from './models/Offer';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
title = 'appspress-tracker-frontend';
constructor(private logger: LogManagerService) {
logger.debug('AppComponent initialized');
}
offers1() {
this.logger.debug('offers log');
const mockRepository = {
getOffers: function () {
return [
new Offer(1, 'test1', ['RU', 'BR', 'IN']),
new Offer(2, 'test2', ['GB']),
new Offer(3, 'test3', ['RU']),
new Offer(3, 'test3', ['RU']),
new Offer(3, 'test3', ['RU'])
];
}
};
return mockRepository.getOffers();
}
fetchOffer(id) {
this.logger.debug('offers log');
}
}
Т.е. метод offers1 вызывается по несколько раз, когда отображается компонент. Даже и не могу понять, в чем может быть проблема. Подскажете?