Angular / Ioni c значок загрузки при загрузке страницы - PullRequest
0 голосов
/ 17 апреля 2020

Я создаю приложение на Angular / Ioni c и хотел бы использовать компонент ion-loading , чтобы отобразить значок загрузки во время загрузки страницы.

Однако Я не могу найти много информации об этом в документации, но как вы на самом деле проверяете, был ли загружен весь контент? Кажется, вы должны назначить продолжительность для компонента ионной загрузки. Может ли кто-нибудь указать мне правильное направление?

В качестве своего рода обходного пути (код ниже) я заставил приложение загружать все последовательно, но это не идеально, потому что я все еще хотел бы, чтобы приложение выполняло некоторые действия параллельно увеличить скорость загрузки.

  loading: any;
  async presentLoading() {
    this.loading = await this.loadingController.create({
      message: 'Loading...'
    });
    await this.loading.present();
  }

  async initializeApp() {
    this.presentLoading();
    await this.getData();
    await this.getCurrentDate();
    await this.loading.dismiss();
  }

  ngOnInit() {
    this.initializeApp();
  }

1 Ответ

0 голосов
/ 17 апреля 2020

Если основная проблема, которую вы пытаетесь решить, заключается в том, что вы не хотите вызывать getData() & getCurrentDate() последовательно, вы можете вместо этого сделать что-то подобное.

async initializeApp() {
    this.presentLoading();
    await Promise.all([
        this.getData();
        this.getCurrentDate();
    ])
    await this.loading.dismiss();
  }

Этот ответ хорошо объясняет, как работает Promise.all().

Кроме того, вам не нужно await this.loading.present() & this.loading.dismiss() в этом сценарии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...