目标:点击 marker 或者 车牌号,定位到车辆位置,设置合适的zoom,并且openPopup打开信息弹窗
问题:点击车牌号后,有时无法正确打开openPopup
原因:
- popup绑定在了marker上
- 考虑marker点在openPopup时未打在地图上。
使用了
L.markercluster聚集功能,zoom缩放到一定背书后才会显示marker点
解决方法:
- 改变代码顺序,缩放后在openPopup ;如果仅改变顺序不行,可以使用setTimeOut
- 直接创建popup弹窗,不要与marker绑定
方法2详细代码如下:
// 地图初始化
this.popup = L.popup().setContent('html-content')
// 打开popup
this.popup
.setLatLng(marker.getLatLng())
.openOn(this.map)