“Expected to not be in Angular Zone, but it is!”错误的含义是什么?

9

我在将Angular 2 RC4升级到RC5后开始出现这个错误。它似乎并没有影响应用程序的行为,但会被写入控制台,可能会分散注意力,遮盖其他错误等。

有人能提供一些如何排除此问题的提示吗?


有没有解决这个错误的方案?我在生产服务器上遇到了这个错误,但是在本地或任何测试服务器上都没有遇到。可能是什么原因引起的? - Schatak
1个回答

4

这是一个老问题,但是当我在搜索解决同样控制台消息的方法时,它在谷歌搜索结果中占据了重要地位,因此我将在此处留下适用于我的解决方案。

我正在使用的代码最初是使用AngularJS构建的,但是开发后切换到了Angular2。 当应用程序正在加载时,使用UpgradeAdapter进行引导调用,显然这就是问题发生的地方。

我所做的是从@angular/core导入NgZone并使用runOutsideAngular方法执行引导调用。 一旦我这样做,错误消息就消失了。 示例:

this.zone.runOutsideAngular(() => { performBootstrapCall(); });

我们不再遇到这个错误了。不确定是什么原因导致的,但我们没有使用类似于你的代码。不过你所做的似乎很合适。 - Scott Munro

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接