Coroutine'nokia.maps.map.render.p2d.Engine#_renderCo'异常中止异常

时间:2013-11-20 11:18:19

标签: here-api

我已将HereMaps JavaScript从2.2.4更新到2.5.3,并且地图已停止在Chrome上运行(版本31.0.1650.57 m)。 Firefox和IE像以前一样工作。

在控制台上我多次看到该消息

Coroutine'nokia.maps.map.render.p2d.Engine#_renderCo'异常base.js异常中止:158 TypeError:无法读取未定义的属性“body”

有没有人暗示可能出现的问题?

感谢。

1 个答案:

答案 0 :(得分:1)

如果没有看到您的代码,很难回答您的具体问题,但我能够产生类似的错误,可能会帮助您找到问题。

如果您收到多个错误消息,那么JavaScript库本身可能会定期调用某些内容。从错误的文本中,库可能正在运行Coroutine,它通常用于应用程序中的线程。

我可以产生的错误是在回调中 - 如果我向地图添加叠加层,并故意尝试访问我的代码中不存在的属性,我可以得到:

Coroutine 'nokia.maps.map.render.p2d.Engine#_renderCo' aborted abnormally with exception base.js:158
TypeError: Cannot read property 'bar' of undefined 

这是因为我添加了一个拼写错误如下:

我将回调中的foo.something.bar引用更改为foo.does_not_exist.bar。所以我猜你回调中的某个地方你在回调中引用foo.something.body - 例如,它可能在听众中。

另一种可能性是,您在创建地图时直接切换到Display.SATELLITE - 不再允许这样做:

取自developer.here.com上的新闻Feed:

  

用2.5.3突破更改

     

新的渲染引擎需要初始化地图   异步。如果要更改中心,缩放级别或   基本映射类型API现在要求应用程序等待   要被解雇的"displayready"事件。此事件仅触发一次。   请参阅开发人员指南(“Beyond the Basic Map Application”部分   “)了解详情。