一旦 raven-js 被调用,angular 应用程序就不再工作,而只会启动某种无限循环:
Uncaught RangeError: Maximum call stack size exceeded
at http://localhost:4200/polyfills.bundle.js:5303:31
at XMLHttpRequest.proto.(anonymous function) (http://localhost:4200/polyfills.bundle.js:3819:24)
at XMLHttpRequest.open (http://localhost:4200/vendor.bundle.js:4636:37)
at Raven._makeRequest (http://localhost:4200/vendor.bundle.js:5317:17)
at Raven._sendProcessedPayload (http://localhost:4200/vendor.bundle.js:5241:56)
at Raven._send (http://localhost:4200/vendor.bundle.js:5183:22)
at Raven._processException (http://localhost:4200/vendor.bundle.js:4957:14)
at Raven._handleStackInfo (http://localhost:4200/vendor.bundle.js:4863:14)
at Raven.captureException (http://localhost:4200/vendor.bundle.js:4001:18)
at XMLHttpRequest.wrapped [as __zone_symbol__ON_PROPERTYreadystatechange] (http://localhost:4200/vendor.bundle.js:3937:22)
at XMLHttpRequest.wrapFn (http://localhost:4200/polyfills.bundle.js:3620:39)
at XMLHttpRequest.wrapped [as __zone_symbol__ON_PROPERTYreadystatechange] (http://localhost:4200/vendor.bundle.js:3934:29)
at XMLHttpRequest.wrapFn (http://localhost:4200/polyfills.bundle.js:3620:39)
at XMLHttpRequest.wrapped [as __zone_symbol__ON_PROPERTYreadystatechange] (http://localhost:4200/vendor.bundle.js:3934:29)
at XMLHttpRequest.wrapFn (http://localhost:4200/polyfills.bundle.js:3620:39)
at XMLHttpRequest.wrapped [as __zone_symbol__ON_PROPERTYreadystatechange] (http://localhost:4200/vendor.bundle.js:3934:29)
at XMLHttpRequest.wrapFn (http://localhost:4200/polyfills.bundle.js:3620:39)
at XMLHttpRequest.wrapped [as __zone_symbol__ON_PROPERTYreadystatechange] (http://localhost:4200/vendor.bundle.js:3934:29)
at XMLHttpRequest.wrapFn (http://localhost:4200/polyfills.bundle.js:3620:39)
at XMLHttpRequest.wrapped [as __zone_symbol__ON_PROPERTYreadystatechange] (http://localhost:4200/vendor.bundle.js:3934:29)
at XMLHttpRequest.wrapFn (http://localhost:4200/polyfills.bundle.js:3620:39)
at XMLHttpRequest.wrapped [as __zone_symbol__ON_PROPERTYreadystatechange] (http://localhost:4200/vendor.bundle.js:3934:29)
at XMLHttpRequest.wrapFn (http://localhost:4200/polyfills.bundle.js:3620:39)
at XMLHttpRequest.wrapped [as __zone_symbol__ON_PROPERTYreadystatechange] (http://localhost:4200/vendor.bundle.js:3934:29)
at XMLHttpRequest.wrapFn (http://localhost:4200/polyfills.bundle.js:3620:39)
at XMLHttpRequest.wrapped [as __zone_symbol__ON_PROPERTYreadystatechange] (http://localhost:4200/vendor.bundle.js:3934:29)
at XMLHttpRequest.wrapFn (http://localhost:4200/polyfills.bundle.js:3620:39)
at XMLHttpRequest.wrapped [as __zone_symbol__ON_PROPERTYreadystatechange] (http://localhost:4200/vendor.bundle.js:3934:29)
at XMLHttpRequest.wrapFn (http://localhost:4200/polyfills.bundle.js:3620:39)
at XMLHttpRequest.wrapped [as __zone_symbol__ON_PROPERTYreadystatechange] (http://localhost:4200/vendor.bundle.js:3934:29)
at XMLHttpRequest.wrapFn (http://localhost:4200/polyfills.bundle.js:3620:39)
at XMLHttpRequest.wrapped [as __zone_symbol__ON_PROPERTYreadystatechange] (http://localhost:4200/vendor.bundle.js:3934:29)
at XMLHttpRequest.wrapFn (http://localhost:4200/polyfills.bundle.js:3620:39)
at XMLHttpRequest.wrapped [as __zone_symbol__ON_PROPERTYreadystatechange] (http://localhost:4200/vendor.bundle.js:3934:29)
at XMLHttpRequest.wrapFn (http://localhost:4200/polyfills.bundle.js:3620:39)
at XMLHttpRequest.wrapped [as __zone_symbol__ON_PROPERTYreadystatechange] (http://localhost:4200/vendor.bundle.js:3934:29)
at XMLHttpRequest.wrapFn (http://localhost:4200/polyfills.bundle.js:3620:39)
at XMLHttpRequest.wrapped [as __zone_symbol__ON_PROPERTYreadystatechange] (http://localhost:4200/vendor.bundle.js:3934:29)
at XMLHttpRequest.wrapFn (http://localhost:4200/polyfills.bundle.js:3620:39)
at XMLHttpRequest.wrapped [as __zone_symbol__ON_PROPERTYreadystatechange] (http://localhost:4200/vendor.bundle.js:3934:29)
at XMLHttpRequest.wrapFn (http://localhost:4200/polyfills.bundle.js:3620:39)
at XMLHttpRequest.wrapped [as __zone_symbol__ON_PROPERTYreadystatechange] (http://localhost:4200/vendor.bundle.js:3934:29)
at XMLHttpRequest.wrapFn (http://localhost:4200/polyfills.bundle.js:3620:39)
at XMLHttpRequest.wrapped [as __zone_symbol__ON_PROPERTYreadystatechange] (http://localhost:4200/vendor.bundle.js:3934:29)
at XMLHttpRequest.wrapFn (http://localhost:4200/polyfills.bundle.js:3620:39)
at XMLHttpRequest.wrapped [as __zone_symbol__ON_PROPERTYreadystatechange] (http://localhost:4200/vendor.bundle.js:3934:29)
at XMLHttpRequest.wrapFn (http://localhost:4200/polyfills.bundle.js:3620:39)
at XMLHttpRequest.wrapped [as __zone_symbol__ON_PROPERTYreadystatechange] (http://localhost:4200/vendor.bundle.js:3934:29)
at XMLHttpRequest.wrapFn (http://localhost:4200/polyfills.bundle.js:3620:39)
at XMLHttpRequest.wrapped [as __zone_symbol__ON_PROPERTYreadystatechange] (http://localhost:4200/vendor.bundle.js:3934:29)
使用 ng new 启动一个新的 angular-cli 应用程序,添加 npm raven-js 依赖项,从 app.module.ts 中导入并调用它,
这是一个最小的存储库,只包含一个空的 angular-cli 应用程序、raven-js dep 和初始化代码(Raven.config().install() 足以触发问题): https :
我们将原因追溯到[email protected]
,在之前的小版本中, 0.8.16
一切仍然有效
我也在经历这个。
angluar-cli 1.4.0 和 zone.js 0.8.16 也有同样的问题。
抛出以下控制台错误:
Firefox:内部错误:递归过多
其他浏览器:RangeError:超出最大调用堆栈大小
这个问题有可能在未来版本的 Raven 中解决吗? 我不想因为这种兼容性问题而锁定我的zone.js
版本。
+1
@LukasKlement @rtm @mkoczorowski ,这个问题不在 Raven.js 实现方面,而是在 Zone.js 上。 值得庆幸的是,他们已经在 5 天前修补了它,现在一切正常。
它只需要作为 npm 的补丁版本发布。 请参阅 9 月 6 日最近的 2 个提交 – https://github.com/angular/zone.js/commits/master
您可以通过更改本地测试它自己的zone.js
在package.json
至[email protected]:angular/zone.js.git#d4e5ae8f6e72f0b4ef8e816e369530b72e582ba7
,例如。
"zone.js": "[email protected]:angular/zone.js.git#d4e5ae8f6e72f0b4ef8e816e369530b72e582ba7"
更具体地说(因为仍然有很多关于这个问题的报告),这是可以修复它的提交 – https://github.com/angular/zone.js/commit/d4e5ae8f6e72f0b4ef8e816e369530b72e582ba7
乘坐!
将zone.js
升级到0.8.18
对我的 Angular v.4+ 应用程序有效。
@kblestarge
你确定吗 ? 我刚刚将 zone.js 升级到 0.8.18,但仍然出现循环错误:(
@mxman06它适用于 zone.js 0.8.18 - 也许还有另一个罪魁祸首?
最有用的评论
我们将原因追溯到
[email protected]
,在之前的小版本中,0.8.16
一切仍然有效