高德点聚合中的Marker位置不更新?

目前在做利用websocket推送的数据来实时更新车辆状态的系统,包括车辆的位置。车辆较多,所以用到了高德的点聚合。

// 初始化地图
initMap() {
    this.map = new AMap.Map('child_amap', {
        zoom: 14,
        center: [120, 30], 
        mapStyle: this.mapStyle
    })
    // 点聚合
    this.cluster = new AMap.MarkerCluster(this.map, [], {
        gridSize: 60,
        // 自定义聚合点样式
        renderClusterMarker: this.renderClusterMarker,
        // 自定义非聚合点样式
        renderMarker: this.renderMarker
    })
},
renderMarker(context) {
    const { deviceId } = context.data;
    const content = `
        <img src="......" id="......" />
    `;
    context.marker.setContent(content);

    // 将生成的Marker保存到markers对象中
    this.markers[deviceId] = context.marker;
},

在收到websocket推送的数据后,利用如下代码实现车辆移动,但是车辆并不移动,不知道类似功能的系统是如何实现的?

this.markers[deviceId].setPosition(coords)
阅读 1.8k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题