Как показать ionic spinner/loader поверх всех страниц

Есть ли способ всегда показывать загрузчик или заставить его оставаться, когда я его вызываю?

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

Это мой код:

public loader = this.loadingController.create({
  spinner: 'crescent',
  duration: 5000,
  message: 'Please wait...',
  translucent: true,
  cssClass: 'custom-class custom-loading'
});

public async loaderPresent() {
  await this.loader.then((overlay)=>{
    overlay.present();
  })
}

public async loaderDismiss() {
  await this.loader.then((overlay)=>{
    overlay.dismiss();
  })
}

Но проблема в следующем: Загрузчик не остается при программном изменении страницы.

Чего я пытаюсь достичь, так это: Загрузчик должен быть абсолютным и охватывать все автоматизированные процессы, происходящие в моем приложении.

Дополнительная информация: У меня есть inAppBrowser, и он закрывает экран загрузки.

какую версию ionic вы используете?

Yushin 21.02.2019 10:46

Я использую ионник 4

Marcel Wade 22.02.2019 00:57

Скорее всего, ваш inAppBrowser находится на другом уровне, чем ваш веб-просмотр, что делает HTML и CSS неуместными для его обработки в этом случае. Вы, вероятно, охватите более подходящую аудиторию, повторно пометив свой вопрос, включив в него сообщества Cordova или Capacitor, Android и/или iOS.

ghybs 22.02.2019 02:43
0
3
1 030
1

Ответы 1

ионный 4

async present(){

    const loading = await this.loadingController.create({
      message: `Uploading images...`
    });
    await loading.present();
}




dismiss(){
    this.loadingController.dismiss();
}

ионный 3

presentLoadingDefault() {
  let loading = this.loadingCtrl.create({
    content: 'Please wait...'
  });

  loading.present();

  setTimeout(() => {
    loading.dismiss();
  }, 5000);
}

Привет @yushin, это то, что я сделал с ionic 4, я только что изменил некоторые части кода, которые я использовал, но я также попробовал предложенный вами код, чтобы быть уверенным, но, к сожалению, inAppBrowser по-прежнему закрывает загрузчик :(

Marcel Wade 22.02.2019 02:12

да, inAppBrowser всегда занимает верхнюю позицию, потому что предполагает, что счетчики и другие настройки выполняются на другой стороне.

Yushin 22.02.2019 05:31

Извините, я не видел часть inAppBrowser. вы можете настроить это только на веб-сайте, который вы посещаете, если он ваш.

Yushin 22.02.2019 05:34

Другие вопросы по теме