alcatrazbr
5/2/2020 - 11:14 PM

ionic página html lst

<ion-header>
  <ion-toolbar color="primary">
    <ion-buttons slot="start">
      <ion-button (click)="close()">
        <ion-icon name="arrow-back"></ion-icon>
      </ion-button>
    </ion-buttons>
    <ion-title>Produtos</ion-title>
  </ion-toolbar>
</ion-header>
  <ion-content>
  <!-- animacao -->
  <ion-list *ngIf="(!lista.length) && (haveRegister)">
    <ion-item *ngFor="let item of [0,1,2,3,4,5,6]">
      <ion-avatar slot="start">
        <ion-skeleton-text animated></ion-skeleton-text>
      </ion-avatar>
      <ion-label>
        <h3>
          <ion-skeleton-text animated style="width: 60%"></ion-skeleton-text>
        </h3>
      </ion-label>
    </ion-item>
  </ion-list>
  <!-- /animacao -->

  <!-- nada encontrado -->
  <ion-list *ngIf="!haveRegister">
    <!-- <ion-list *ngIf="!extratos.length"> -->
    <ion-item>
      <ion-avatar slot="start">
        <img src="../assets/img/nada-encontrado_64.png">
      </ion-avatar>
      <ion-label>
        <h2>Ooops...</h2>
        <h3>
          <ion-text>Não existem lançamentos</ion-text>
        </h3>
      </ion-label>
    </ion-item>
  </ion-list>
  <!-- /nada encontrado -->

  <ion-refresher slot="fixed" 
  (ionRefresh)="ionRefresh($event)" 
  pullFactor="1.2">
    <ion-refresher-content
      pullingIcon="arrow-dropdown"
      pullingText="Push para atualizar"
      refreshingSpinner="circles"
      refreshingText="carregando...">
    </ion-refresher-content>
  </ion-refresher>

  <ion-list>
    <ion-item (click)="seleciona(item)"  *ngFor="let item of listaFull">
      <ion-label>{{ item.Descricao }}</ion-label>
    </ion-item>
  </ion-list>
</ion-content>


  private loading: any;
  public lista = new Array<Produto>();
  public haveRegister: Boolean = true;

  constructor(
    private service: ProdutoService,
    private loadingCtrl: LoadingController,
    private authService: AuthService,
    private toastCtrl: ToastController,
    private navCtrl: NavController,    
    private router: Router

  ) { 
    console.log('constructor');
    
  }

  ngOnInit() {
  }

  ngOnDestroy() {}

  ionViewDidEnter() {
    this.loadData();
  }

  async loadData() {
    console.log('load');    
    this.lista = [];

    try {
      this.lista = await this.service.getHttpDataAsync(0);
      this.haveRegister = this.lista.length > 0;
    } catch (error) {
      console.log(error);
      this.presentToast(error);    
    }
  }


  async delete(id: string) {
    await this.presentLoading('Apagando...');
    console.log(id);
    
    try {
      let self = this;
      await this.service.delHttpDataAsync(id);
      await this.loadData();
    } catch (error) {
      this.presentToast('Erro ao tentar deletar');
      console.log(error);      
    } finally {
      this.loading.dismiss();
    }
  }

  seleciona(item) {
    
  }

  async presentLoading(message: string) {
    this.loading = await this.loadingCtrl.create({ message });
    return this.loading.present();
  }

  
  async presentToast(message: string) {
    const toast = await this.toastCtrl.create({ message, duration: 3000 });
    toast.present();
  }


}