问题描述
提示:这里描述项目中遇到的问题:
高德地图绘制Polygon后,点击绘制的面,map.on(“click”)事件无效
let map = null
AMapLoader.load({
key: ak, // 申请好的Web端开发者Key,首次调用 load 时必填
version: "1.4.15", // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15
}).then((A) => {
AMap = A
map = new AMap.Map(id);
map.on('click', (ev) => {})
原因分析:
提示:这里填写问题的分析:
Polygon 面在地图上面,层级比地图高 导致地图点击事件无效
解决方案:
提示:这里填写该问题的具体解决方案:
let layer= new AMap.GeoJSON({
geoJSON: a,
getPolygon: function (geojson, lnglats) {
//将解析出来的面 进行绘制
return new AMap.Polygon({
path: lnglats,
strokeColor: “#0dcdd1”,
fillColor: “rgba(0,0,0,0.01)”,
});
},
getMarker: function (geojson, lnglats) {
//用来绘制点
},
getPolyline: function (geojson, lnglats) {
//用来绘制线;
}
});
map.add(layer)
AMap.event.addListener(layer, 'click', function (e) {
// 处理点击事件
console.log("polygon",e)
});