Javascript 未捕获类型错误:无法读取属性'__e3';空的
我得到一个错误Javascript 未捕获类型错误:无法读取属性'__e3';空的,javascript,google-maps-api-3,Javascript,Google Maps Api 3,我得到一个错误uncaughttypeerror:在谷歌地图中拖动多边形时,无法随机读取null的属性'\uuuuue3'。我的意思是,当我拖动多边形时,大多数情况下都能按预期工作,但很少有几次失败 在Google Chrome控制台中,显示的错误为: 1) 错误标题: Uncaught TypeError: Cannot read property '__e3_' of null js?libraries=drawing,geometry:87 2) 错误主体: _.I.hasListene
uncaughttypeerror:在谷歌地图中拖动多边形时,无法随机读取null的属性'\uuuuue3'
。我的意思是,当我拖动多边形时,大多数情况下都能按预期工作,但很少有几次失败
在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
编辑:
我没有粘贴代码块,而是提供了一个fiddle作为代码工作的示例:
错误似乎在这一行:
var isMarkerContained = google.maps.geometry.poly.containsLocation(CREAR_CAMP.markerWithLabelCasaClub.getPosition(), CREAR_CAMP.polygonArea);
要重现错误,必须有人:
1) 首先单击左侧启用的多边形并在地图上绘制多边形
2) 单击“立即启用”按钮(当多边形绘制完成后,它将启用),它将在多边形内显示一个标记。现在是错误可能出现的时候了。有人只需尝试移动多边形并调整其大小(尝试将标记保留在多边形区域之外),就会在Google Chrome控制台中显示错误。正如我所说,这是随机发生的,而且发生的次数很少。更新2019:我无法再次重现该问题,错误一定是由谷歌修复的
这似乎是谷歌的一个缺陷 下面是一个用于绘图的最小代码:。我只更改选项 如果你玩得够多,你会看到同样的错误被触发,所以这在你的代码中不是一个问题 如果不希望出现此错误,则必须使用window.OneError:
window.onerror = function(msg, url, lineNo, columnNo, error) {
#maybe some condition code
return true; //suppress error
}
但是我不推荐它。请提供一个例子来说明这个问题。
common.js:225
和:79
上有什么内容?你把它叫做什么?@Kenney,在我的JavaScript中,至少我知道我没有在外部common.js文件中显式调用任何匿名函数。@geocodezip我已经提供了页面的全部JavaScript代码。它可能是。你必须调试。找到堆栈跟踪的每一行都包含哪些源代码,并从您自己的代码中的源代码开始。您可以在JS控制台中设置断点。您将希望使用JS的原始源代码,而不是用于此目的的缩小/丑化版本。这种错误通常来自于某些DOM查询返回null而不是预期的元素。只是尝试一下,您的小提琴中的海滩标志图标链接不好,您可以将其更改为。我仍然无法重现这个错误。您是否有它出现的用例?我试着画了很多形状,也改变了它的可拖动顶点。在我的小提琴中,我想知道的一件事是,在一个循环中使用google.maps.geometry.poly.containsLocation(randomLatLng,CREAR_CAMP.polygorea)的事实是否正确代码>可能会导致暂时无法访问几何体库。去制作一些多边形,玩顶点,尝试制作一些奇怪的形状。我只看到了一个多边形的错误。错误被捕获,我只是在调整多边形大小和添加或删除顶点方面做得不够。谢谢,我觉得我的代码有错误,我不知道如何解决它。正如您所提供的,我将使用窗口.error
来防止它。