Данные вашего продукта не находятся внутри *ngFor
, вы можете передать product
на <product-details>
, только если он находится внутри области его действия. Я, конечно, рекомендую использовать здесь ввод, потому что он помогает сохранить ваш product-details
компонент независимым и выполнять роль компонента только презентации Если вы используете службу, она будет зависеть от того, что служба должна откуда-то получать данные, что в этом случае сделает product-details
слишком сложным. Вот пример:
<ion-item *ngFor="let product of products">
<ion-label>
{{ product }}
</ion-label>
<div [ngSwitch]="state">
<ng-container *ngSwitchCase="states.Product">
<product-details [product]="product"></product-details>
</ng-container>
</div>
</ion-item>
И в вашем product-details.component.ts :
@Input() product: Product;