需求是,根据后端传的经纬度数据,让标识产生实时移动的效果。
苹果手机没有问题,小米手机使用后,会复制一个图标出来。附件中有展示。这是啥问题?
代码片段
let deviceMarker = [
{
id: 0,
lngLatList: [
{
lng: 111.12,
lat: 22.12,
},
{
lng: 111.56,
lat: 22.22,
},
{
lng: 111.43,
lat: 22.89,
},
{
lng: 111.66,
lat: 22.12,
},
],
},
];
let allDriverMarker=[];
moveMarkers(deviceMarker) {
deviceMarker.forEach(item => {
if (item.lngLatList.length > 0) {
item.lngLatList.forEach(lngLatItem => {
if (lngLatItem.lng && lngLatItem.lat) {
if (this.allDriverMarker.includes(item.id)) {
this.mapObj.translateMarker({
markerId: item.id,
autoRotate: false,
duration: 1000,
destination: {
latitude: lngLatItem.lat,
longitude: lngLatItem.lng,
},
});
} else {
this.mapObj.addMarkers({
markers: [
{
id: item.id,
latitude: lngLatItem.lat,
longitude: lngLatItem.lng,
},
],
});
this.allDriverMarker.push(item.id);
}
}
});
} else {
if (this.allDriverMarker.includes(item.id)) {
this.mapObj.removeMarkers({
markerIds: [item.id],
});
}
}
});
},