问题描述
我有将近 500 个标记,这些标记还有另一个标记。这两个标记也在运动。它每 10 秒更新一次位置。
Black circle marker is main marker,blue one is connected marker
我把连接的marker控制成图层控件。
第一次打开地图时,黑色标记每 10 秒移动一个。 1分钟后,当我打开连接到图层控件的标记时,我看到它连续创建了5-6个标记。
预期结果: 与第一张照片一样,黑色标记和连接标记应该是一个。他们应该一起行动。
实际结果: 连接的标记在地图的背景中创建了许多标记。当我点击控件时,所有标记都会显示在地图上。
从第一次打开地图的那一刻起,所有标记都形成并存储在后台。黑色标记不会在地图上重复,但另一个标记构成了所有位置。
layerGroup.removeLayer()
无法删除出现在后台的标记。有了 layerGroup[1].clearLayer()
,情况变得更加复杂。这一次,一个标记在 10 秒后消失并再次形成。
A connected marker creates a marker by repeating it at all locations it passes through.
有没有一种方法可以删除出现在后台的标记?当用户长时间停留在地图上时,地图会变慢并冻结。由于未删除 10 秒内出现的标记而导致地图性能崩溃。
getAllData() {
this.subscribed = true;
const source = timer(0,this.VEHICLE_DATA_REFRESH_TIME);
this.timerSubscription = source.subscribe((val) => {
this.getMarkers();
});
this.subscriptions.push(this.timerSubscription);
}
getMarkers() {
this.locationService.getLocation().subscribe((res) => {
if (res.data) {
res.data.location.forEach(item => {
this.addMainMarker(item);
this.addConnMarker(item);
})
}
});
}
调试时,所有标记都出现在后台。同一辆车的不同位置信息出来了。我需要一个可以删除它们的方法。
我正在使用 Angular,ngx-admin 模板
Laeflet 版本:“1.5.1”
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)