Как составить список всех предметов объекта в ionic 3? - PullRequest
0 голосов
/ 18 ноября 2018

Лично, возможно, мой вопрос не слишком ясен, но я пытаюсь сделать так, чтобы, щелкнув элемент «Лента» на экране категорий, отобразить список всех компаний, связанных с подачей на экране компаний.

Я очень смущен, потому что в каждой категории будет несколько компаний, и я не знаю, как их правильно составить, может ли кто-нибудь мне помочь?

Первое изображение, на котором у меня есть экран моей категории и нажатие на элемент «Лента», должно отображать все компании, связанные с категорией фидов.

Page Category

Мое следующее изображение связано со страницей компании, и именно здесь будут перечислены все компании, связанные с продуктами питания

Page Company

Мои предметы хранятся в моем приложении как объект.

Вот мой home.html

    <ion-content id="#pageTop">
  <ion-searchbar (ionInput)="getItems($event)" placeholder="Pesquisar"></ion-searchbar>
  <ion-item *ngFor="let item of items">
    <ion-thumbnail item-left>
        <img [src]="item.imagem">
    </ion-thumbnail>
    <h2>{{ item?.category }}</h2>
    <button ion-button clear item-end color="primary" (click)="itemTapped($event, item)">Abrir</button>
  </ion-item>

  <ion-fab right bottom>
    <button ion-fab color="secondary" (click)="pageScroller()"><ion-icon name="ios-arrow-up"></ion-icon></button>
  </ion-fab>

А внутри моего home.ts хранятся объекты

    initializeItems(){
    this.items = [
      { category: 'Alimentação', imagem: '../../assets/imgs/alimentacao.jpeg'},
    ]
  }

И именно в этой части у меня возникают сомнения, потому что я намереваюсь добавить в Объект массив типа company и добавить туда все компании, однако невозможно разместить дубликат объекта.

Как в этом примере

 this.items = [
      { category: 'Alimentação', imagem: '../../assets/imgs/alimentacao.jpeg', company:'companyOne', company:'companyTwo'},
    ]

А мой company.html вот так

    <ion-item *ngFor="let company of company">
      <h2>{{ company?.category }}</h2>
    </ion-item>

А мой company.ts вот так

   company: any[];
   constructor(public navCtrl: NavController, public navParams: NavParams) {
    this.company = this.navParams.get('item');
  }

1 Ответ

0 голосов
/ 18 ноября 2018

Вы говорите, что вы намеревались добавить массив объектов компании (насколько я понимаю). Я не уверен, почему ты наконец не сделал.

Я думаю, что вы должны хранить компании в виде массива в вашем элементе:

    this.items = [
        {   category: 'Alimentação', 
            imagem: '../../assets/imgs/alimentacao.jpeg', 
            companies:[{ /*first company object*/}, {/*second company object*/}]
        }];

И вы бы отобразили компании, связанные с таким предметом, как это:

<ion-item *ngFor="let item of items">
    <ion-item *ngFor="let company of item.companies">
        <h2>{{ company?.category }}</h2>
    </ion-item>
</ion-item>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...