在Google地图中拖动多边形时,我会随机收到错误Uncaught TypeError: Cannot read property '__e3_' of null
。我的意思是,大多数时候我拖动多边形按预期工作,但很少有几次失败。
在Google Chrome控制台中,显示的错误是:
1)错误标题:
Uncaught TypeError: Cannot read property '__e3_' of null js?libraries=drawing,geometry:87
2)错误正文:
_.I.hasListeners @ js?libraries=drawing,geometry:87
_.I.trigger @ js?libraries=drawing,geometry:88
W1 @ poly.js:20
_.t.mm @ poly.js:82
_.I.trigger @ js?libraries=drawing,geometry:88
(anonymous function) @ js?libraries=drawing,geometry:34
_.I.trigger @ js?libraries=drawing,geometry:88
(anonymous function) @ common.js:79
_.I.trigger @ js?libraries=drawing,geometry:88
Mm @ common.js:69
(anonymous function) @ common.js:225
(anonymous function) @ common.js:225
编辑: 我没有粘贴代码块,而是提供了一个小提琴,作为代码工作的一个例子: https://jsfiddle.net/w6Lnk47u/16/
错误似乎在这一行:
var isMarkerContained = google.maps.geometry.poly.containsLocation(CREAR_CAMP.markerWithLabelCasaClub.getPosition(), CREAR_CAMP.polygonArea);
要重现错误,有人必须:
1)首先单击左侧启用的一个,然后在地图上绘制一个多边形。
2)单击右侧现在启用的按钮(当多边形的绘制完成时启用),它将在多边形内显示一个标记。现在是错误发生的时候了。有人只需要尝试移动和调整多边形的大小(尝试将标记留在多边形区域之外),它将在Google Chrome控制台中显示错误。正如我所说的那样,它会随机发生几次。
答案 0 :(得分:3)
这似乎是Google的一个错误。
以下是使用Google suggests进行绘制的最小代码的小提琴:https://jsfiddle.net/TomKarachristos/hc7nwwdx/。我只更改选项。
如果你玩够了,你会发现触发了同样的错误,因此代码中没有问题。
如果您不想出现此错误,则必须使用window.onerror:
window.onerror = function(msg, url, lineNo, columnNo, error) {
#maybe some condition code
return true; //suppress error
}
但我不推荐它。