雪鸽
雪鸽
  • 发布:2021-08-27 15:45
  • 更新:2021-08-27 15:45
  • 阅读:473

使用 map组件的translateMarker 方法时,小米10手机出现,marker多复制一个的问题,咋整?

分类:uni-app

需求是,根据后端传的经纬度数据,让标识产生实时移动的效果。

苹果手机没有问题,小米手机使用后,会复制一个图标出来。附件中有展示。这是啥问题?

代码片段

     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],  
                        });  
                    }  
                }  
            });  

        },  
2021-08-27 15:45 负责人:无 分享
已邀请:

该问题目前已经被锁定, 无法添加新回复