Google Maps标记属性莫名变更,代码频繁失效求助
解答
那些像ab、Fa、eb这类随机短属性名,是Google Maps JavaScript API在生产环境被代码压缩混淆后的产物。
Google为了缩小API脚本的体积,会在发布时自动把有意义的变量/属性名替换成无意义的短字符串,而且每次API版本更新、甚至同版本的不同构建包,这些短名称都可能随机变化——这就是你硬编码属性名后,会时不时出现「属性未定义」报错的原因。
你最终用Object.keys()动态获取属性名的方案是完全正确的:这种写法不依赖压缩后的随机属性名,只要marker_data.bounds的结构保持稳定(始终包含两个子对象,每个子对象有lo属性对应经纬度值),代码就能一直正常运行。
另外你提到的GeoField/Drupal环节没问题,问题根源完全在Google Maps API的内部压缩机制,和Drupal无关。
内容的提问来源于stack exchange,提问作者lobafox
相关产品推荐
相关产品推荐

