в себя массив объектов (в этих объектах тоже есть массив) через @Input() и в шаблоне рисует данные объектов через два *ngFor - первый для заголовка (магазин), второй для товаров этого магазина. Задача показать 3 товара из например 18 и показать кнопку "Еще", чтобы отрисовать оставшиеся товары. На кнопке "Еще" висит функция. Так вот, при нажатии на кнопку - открываются все полные списки товаров. Как сделать так, чтобы кнопка работала только для одного магазина? Пример https://stackblitz.com/edit/angular-ivy-mjqunz
можно добавить в каждый магазин поле типа isOpenedList: boolean; а в клик баттон передавать ид магазина. и потом смотреть для какого магазина всех показывать нужно.
1. Добавить в ngFor индекс: let index = index 2. Передавать этот index в (click)="clikButton(index") 3. В функции разворачивать только нужный массив
Самое простое это вынести каждый магазин в ещё один отдельный компонент который принимать будет список товаров
А если магазинов 1000?
и что, думаешь будут проблемы с производительностью? я так не думаю, это ж не для сингл пейджей фреймворк
Обсуждают сегодня