标记位置仅在 Mapbox GL JS 中短时间更新

Marker position being updated only for a short period of time in Mapbox GL JS

我有一个不断更新标记位置的循环:

function loop(timestamp) {
   marker._lngLat.lng = clientState.markers[room.sessionId].lng;
   marker._lngLat.lat = clientState.markers[room.sessionId].lat;
   requestAnimationFrame(mainLoop);
    }
requestAnimationFrame(loop);

奇怪的是,位置只更新了~一秒,然后停止更新。如果相机位置更新,标记的位置会再次更新约一秒,然后再次停止更新。

可能是什么问题?预先感谢您的见解。

_lngLat 是私有 属性,没有任何保证,您应该使用 public 方法来设置位置,请参阅 API 文档,我认为它叫做 setLngLat