加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

打字稿 – 离子2:加载组件并不总是解散(随机)

发布时间:2020-12-17 17:26:12 所属栏目:安全 来源:网络整理
导读:Q)任何人都知道Ionic 2中的Loading组件是否破损或者我是愚蠢的? 我试图使用Ionic 2中的Loading组件,如下所示: let loading = Loading.create({ content: 'Loading: ',duration: 3000});nav.present(loading); 即使他们被设置为自我解雇,他们有时会出现翻倍
Q)任何人都知道Ionic 2中的Loading组件是否破损或者我是愚蠢的?

我试图使用Ionic 2中的Loading组件,如下所示:

let loading = Loading.create({
  content: 'Loading: ',duration: 3000
});
nav.present(loading);

即使他们被设置为自我解雇,他们有时会出现翻倍(即屏幕上有2个叠加,背景太深),并且他们不会被解雇.

这似乎打破了我.

我试过保留一个全局变量并解雇每个变量:

showLoading(nav: NavController) {
    if(!window.loadingOverlays) {
      window.loadingOverlays = [];
    }
    // only ever show one instance of the overlay.
    if(window.loadingOverlays && window.loadingOverlays.length > 0) {
      return;
    }

    let loading = Loading.create({
      content: 'Loading...'
    });
    nav.present(loading);
    window.loadingOverlays.push(loading);
  }

  hideLoading() {
    if(!window.loadingOverlays || window.loadingOverlays.length == 0) { 
      return; 
    }
    window.loadingOverlays.forEach((overlay) => {
      overlay.dismiss();
    });
    window.loadingOverlays = [];
  }

并添加到它并手动解除它们,但这没有任何效果.

解决方法

我只是遇到了像你这样的问题,我通过将dismiss()放在dismiss()函数返回的promise的.then()之后解决了它.

例如:overlay.dismiss().then(()=> {/ *在此处输入您的代码* /})

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读