为了账号安全,请及时绑定邮箱和手机立即绑定

JS调用百度地图的删除标注功能时出现getLabel().content为空或者不是对象

JS调用百度地图的删除标注功能时出现getLabel().content为空或者不是对象

肥皂起泡泡 2019-04-21 20:41:25
我在C#调用JS进行百度地图定位,其中C#不断传入经纬度,然后js进行标注,在更新标注时我采用删除重复的标注然后再标注过来的数据。这是js代码functionDrawPoint(){varArray=[];vartotal_num=3;for(vari=0;i
查看完整描述

2 回答

?
RISEBY

TA贡献1856条经验 获得超5个赞

functiondeletePoint(){//删除标注点
//getMapLabel();
varallOverlay=map.getOverlays();
for(vari=0;iconsole.log(allOverlay[i].toString())
if(allOverlay[i].toString()=="[objectMarker]"){
if(allOverlay[i].getLabel().content=="当前所在位置"){
map.removeOverlay(allOverlay[i]);
//console.log(allOverlay[i])
returnfalse;
}
}
}
};
楼上的回答真的很有帮助,我解决了!
                            
查看完整回答
反对 回复 2019-04-21
?
POPMUISE

TA贡献1765条经验 获得超5个赞

同求结果,不过我发现这个跟缓存似乎有关系,彻底清空缓存后,一切正常,重新打开页面或者刷新了页面,这个问题必然出现不知道是不是百度api的bug
已找到解决方法,先判断overlay类型,在调用对应类型的的方法functiongetMapLabel(imei){
varreLable=null;
varallOverlay=map.getOverlays();
for(vari=0;iif(allOverlay[i].toString()=="[objectMarker]"){
if(allOverlay[i].getTitle()==imei){
reLable=allOverlay[i].getLabel();
break;
}
}
}
returnreLable;
}
                            
查看完整回答
反对 回复 2019-04-21
  • 2 回答
  • 0 关注
  • 1868 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信