无法创建属性' __ creationTrace __' on string' __ zone_symbol__optimizedZoneEventTask'

时间:2017-07-13 10:10:43

标签: angular zonejs

这是一个糟糕的星期四。这是第13次。昨天我向我的同事们解释了我们对星期四的第13次下降有多么幸运,而不是周五。

嗯,那是昨天,今天我醒来时脸上带着棱角分明的拳头:

  

无法创建属性' creationTrace ' on string' __ zone_symbol__optimizedZoneEventTask'

那么它也可能是zone.js,或者甚至可能更深层次的暗深深处叫做开发堆栈。有人能帮助我吗?

对于我的态度感到抱歉,因为它的早期alpha阶段已经对我产生了影响,所以只是使用角度工作。

PS:我只想说,自昨天的工作版以来,我没有改变任何东西。所以我完全迷失了为什么以及如何以及在哪里发现这个错误......

8 个答案:

答案 0 :(得分:47)

哦,我设法找到出路。 zone.js们最近发布了一个新版本,你可以从这里查看。 https://github.com/angular/zone.js/releases 我认为问题出在这个版本上。 在你的package.json中使用像这样的zone.js

"zone.js": "0.8.12"

如果您在Plunker中使用默认的Angular模板,则可以通过将版本插入index.html文件的相应行来设置zone.js版本。

<script src="https://unpkg.com/zone.js@0.8.12/dist/zone.js"></script>
<script src="https://unpkg.com/zone.js@0.8.12/dist/long-stack-trace-zone.js"></script>

答案 1 :(得分:8)

https://github.com/angular/zone.js/issues/832中所述,错误仅发生在zone.js版本0.8.13中,并且与事件绑定有关。

该错误已经修复,但目前为了修复应用程序,您需要降级到以前版本的zone.js

<{1}}中的{p> "zone.js": "0.8.12"可以解决问题。

答案 2 :(得分:1)

这个错误在最新版Angular的plunker上向我发出。我更改了index.html文件以获取版本“0.8.12”(从unpkg.com/zone.js/dist/zone.js到unpkg.com/zone.js@0.8.12/dist/zone.js)和工作。

答案 3 :(得分:1)

当您使用cdn时,会发生这种情况,并且zonejs已更新其路径URL以区分版本。

所以修改

的路径
https://unpkg.com/zone.js/dist/....

https://unpkg.com/zone.js@0.8.12/dist/....

参考更改日志 here

答案 4 :(得分:0)

想想我发现了一些东西:

在package.json中将“zone.js”修复为版本“0.8.12”为我解决了这个问题。

答案 5 :(得分:0)

  

我的问题是&#39; zone.js&#39;:&#34; 0.8.11&#34;

Unhandled Promise rejection: Cannot create property '__creationTrace__' on string '__zone_symbol__optimizedZoneEventTask' ; Zone: <root> ; Task: Promise.then ; Value: TypeError: Cannot create property '__creationTrace__' on string '__zone_symbol__optimizedZoneEventTask'
    at Object.onScheduleTask (long-stack-trace-zone.js:115)
    at ZoneDelegate.scheduleTask (zone.js:404)
    at Object.onScheduleTask (zone.js:300)
    at ZoneDelegate.scheduleTask (zone.js:404)
    at Zone.scheduleTask (zone.js:235)
    at Zone.scheduleEventTask (zone.js:261)
    at zone.js:1561
    at BrowserPlatformLocation.onPopState (platform-browser.es5.js:1922)
    at PathLocationStrategy.onPopState (common.es5.js:592)
    at new Location (common.es5.js:256)
    at AppBrowserModuleInjector.createInternal (module.ngfactory.js [sm]:1)
    at AppBrowserModuleInjector.NgModuleInjector.create (core.es5.js:3558)
    at NgModuleFactory.create (core.es5.js:3531)
    at core.es5.js:4772
    at ZoneDelegate.invoke (zone.js:391)
    at Object.onInvoke (core.es5.js:4149)
    at ZoneDelegate.invoke (zone.js:390)
    at Zone.run (zone.js:141)
    at NgZone.run (core.es5.js:4017)
    at PlatformRef_._bootstrapModuleFactoryWithZone (core.es5.js:4770)
    at core.es5.js:4812
    at ZoneDelegate.invoke (zone.js:391)
    at Zone.run (zone.js:141)
    at zone.js:832
    at ZoneDelegate.invokeTask (zone.js:424)
    at Zone.runTask (zone.js:191)
    at drainMicroTaskQueue (zone.js:596) TypeError: Cannot create property '__creationTrace__' on string '__zone_symbol__optimizedZoneEventTask'
    at Object.onScheduleTask .........

答案 6 :(得分:0)

昨晚我遇到了同样的问题,我的package.json文件中的zone.js的以下条目对我有用:

“zone.js”:“0.8.4”

答案 7 :(得分:0)

此问题已在zone.js中修复,请更新至zone.js的最新版本