ionicModal展示百度地图不显示的问题

ionic中Modal是一个内容面板,可以临时越过用户的主视图,我们通常用于选择或编辑一个项。当然我们也可以用来加载百度地图,从地图中选择坐标,那是十分的好用。

首先,我们都知道ionicModal使用的时候需要在controller中新建,再.show()出来,但是问题来了,在我第一次进入这个controller对应的页面的时候,新建Modal,然后展示,一切没问题,但是当后面再进入这个controller对应的界面的时候,同样新建了Modal,但是怎么show都显示不出来,纠结了好久,各种百度也没找到问题原因,然后自己看DOM文档变化…

这是第一次进入百度地图Modal的截图:
这里写图片描述

这是第二次进入百度地图Modal的截图:
这里写图片描述

将两个div展开之后发现竟然都是百度地图的Modal,只是其中一个有初始化出的百度地图界面,另外一个并没有。也就是说第一次进入controller新建的Modal并没有在DOM文档中抹去!默默去ionic中文网找把Modal从DOM文档中删掉的方法~

看到这一句…只怪自己当时没认真看啊:
这里写图片描述

所以当Modal不再使用的时候,一定要在切换页面之前,在对应的controller中把Moda给remove掉:

 //退出采集界面
  var exitCollect = function(){
    //离开页面前,清除掉所有的modal缓存
    bMapModal.remove();
    $state.go("taskDetails",{
      task:$stateParams.task
    });
  };

.hide()仅仅是在页面中把对应的Moda的样式设置成隐藏,如果不进行remove,DOM文档中的Moda实例会越来越多,最终有可能造成页面崩溃。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值