为何google.maps.Marker.shape无法生效?技术排查求助
Google Maps自定义标记Shape失效,点击区域始终为默认42px正方形
我开发了三个基于自定义PNG标记的Google Maps地图,具体表现如下:
- 第一个地图:标记及自定义
shape可正常工作,最初未采用Promise架构,后续已更新为异步调用实现; - 第二个地图:是第一个的复现版本(仅移除了多边形边框切换功能),标记构造时同时设置了
icon和shape属性,但shape完全失效,点击区域始终为默认的42px正方形; - 第三个地图:采用多层设计,初始化及楼层切换时会调用
setIcon()、setShape()、setZIndex()方法,但无论初始化阶段还是动态设置时,shape均失效,点击区域仍为默认42px正方形。
我已经完成以下排查操作,但均未解决问题:
- 将所有地图代码更新为异步Promise调用,并核对了所有相关函数名,无效果;
- 反复调整代码,确保三个地图的核心实现逻辑一致,问题依旧;
- 尝试修改
shape对象的声明方式(const/var/let),无变化; - 统一设置地图内所有标记为同一个
shape,失效问题仍然存在; - 检查
shape的坐标值是否越界、坐标列表长度是否符合要求,未发现问题。
查阅官方文档及相关技术资料后仍未找到原因,希望能得到技术上的帮助。
内容的提问来源于stack exchange,提问作者Mithyr
相关产品推荐
相关产品推荐

