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

来源:互联网 发布:上海 软件设计师 积分 编辑:程序博客网 时间:2024/06/06 21:01

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实例会越来越多,最终有可能造成页面崩溃。

1 0
原创粉丝点击