项目场景:
百度地图-mapvgl海量打点,点击弹窗显示详细信息说明。
问题描述
每次刷新浏览器重新绘制圆点
第一次点击圆点,弹窗正常显示
第二次点击或者多次点击,弹窗不显示
// 点图
let map = map;
let pointLayer = new mapvgl.PointLayer({
renderOrder: 6,
blend: "default",
enablePicked: true, // 是否可以拾取
selectedIndex: -1, // 选中数据项索引
selectedColor: '#ff0000', // 选中项颜色
autoSelect: true, // 根据鼠标位置来自动设置选中项
onClick: (e) => { // 点击事件
console.log(e);
if(e.dataIndex!=-1){
let opts = {
width: 230, // 信息窗口宽度
height: 290, // 信息窗口高度
title: "详情", // 信息窗口标题
}
let infoBoxInfo = "<p>我爱我的祖国</p>"
let infoWindow = new BMapGL.InfoWindow(infoBoxInfo,opts); // 创建信息窗口对象
let lnglat = e.dataItem.geometry.coordinates;
let coord = new BMapGL.Point(lnglat[0], lnglat[1]);
map.openInfoWindow(infoWindow, coord); // 开启信息窗口
infoWindow.disableCloseOnClick() // 重要!解决infoWindow不弹窗
}
}
});
view.addLayer(pointLayer);
原因分析:
暂无
解决方案:
参考博文:https://blog.csdn.net/tabooblood/article/details/133684367
关键代码:infoWindow.disableCloseOnClick() // 重要!解决infoWindow不弹窗