Зачем тебе цикл в компоненте модалки?
Вынеси модалку в отдельный компонент, а products вынеси либо в ngrx, либо в @Input директиву и прокидывай свыше. - с остальными данными которые нужны для компонента аналогично поступай.
Добавь цикл там, где нужно вызвать несколько модалок.
Это вынеси в app-product.
modal: boolean = false
showmodal() {
this.modal = !this.modal
}
А здесь используй так:
<button (click)="product.showmodal()" class="btn btn-primary">Детальная информация</button>
И уже в
app-product
показывай или не показывай модалку в зависимости от
modal