angular ZoneAwareError 读取原始堆栈,尽管设置了 __Zone_Error_ZoneJsInternalStackFrames_policy

t3irkdon  于 5个月前  发布在  Angular
关注(0)|答案(1)|浏览(57)

与功能请求相关的@angular/*包有哪些?

  • 无响应*

描述

Zone.js的ZoneAwareError无论__Zone_Error_ZoneJsInternalStackFrames_策略是什么,都始终通过访问error.stack来在构造函数中存储原始错误的堆栈。
angular/packages/zone.js/lib/common/error-rewrite.ts
第123行:| | constoriginalStack=(errorasany)['originalStack']=error.stack; |
当使用自定义堆栈跟踪时,这可能会导致V8中的性能开销,因为即使错误堆栈永远不会被访问,prepareStackTrace方法也会在构造错误时不必要地运行。
在我们的项目中,我们使用了source-map-support包,该包为堆栈跟踪提供源Map支持。这是第一次操作成本较高(秒),我们希望在错误堆栈永远不会被访问时避免这种情况。

建议的解决方案

如果可能的话,只有在涉及到__Zone_Error_ZoneJsInternalStackFrames_策略时才访问原始错误的堆栈。

考虑过的替代方案

.

mfuanj7w

mfuanj7w1#

早上好,这件事有什么更新吗?谢谢。

相关问题