首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >传单.locate观看选项改变选项卡Ionic 3后中断.locate

传单.locate观看选项改变选项卡Ionic 3后中断.locate
EN

Stack Overflow用户
提问于 2017-10-30 17:52:45
回答 1查看 1.6K关注 0票数 1

我有一个名为loadmap(){}的函数,其中im创建map.Im,用

代码语言:javascript
复制
 ionViewDidEnter() {
this.loadmap();


  }

我有里面的装填图

代码语言:javascript
复制
  this.map = leaflet.map("map").fitWorld();

我就是这样初始化地图的

这是我如何删除地图时,用户更改选项卡。

代码语言:javascript
复制
ionViewDidLeave(){

    this.map.remove();


  }

这是我的.locate函数:

代码语言:javascript
复制
var usermarker;


  this.map.locate({
    setView: true,
    maxZoom: 120,
    watch:true,
    enableHighAccuracy:true



  }).on("locationfound", e => {
    if (!usermarker) {
      usermarker = new L.marker(e.latlng).addTo(this.map);
  } else {
      usermarker.setLatLng(e.latlng);
  }
}).on("locationerror", error => {
  if (usermarker) {
      this.map.removeLayer(usermarker);
      usermarker = undefined;
  }
});

问题是,在第一次.locate函数works.but中,如果我更改选项卡并返回到map选项卡,.locate函数没有work.if,我删除了works.but选项,它可以工作。

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-10-31 07:47:41

除了map.stopLocate()以外,你还得打电话给map.remove()

停止监视以前由map.locate({watch: true})启动的位置

现场演示:https://plnkr.co/edit/PKMPjfX3zD3QdWmEI0iX?p=preview (使用"Toggle“按钮模拟您更改的选项卡)

尽管如此,当使用remove映射方法时,传单可以自动完成这一操作。=>合并为公关单张/单张#5893

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47021405

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档