未捕获异常处理器 类型定义

未捕获异常处理器 = void Function(Zone self, ZoneDelegate parent, Zone zone, Object error, StackTrace stackTrace)

自定义 Zone.handleUncaughtError 实现函数的类型。

接收处理器注册的 Zone 作为 self,将消息转发到 self 父区的处理器作为 parent,以及在 zone 中未捕获错误的当前区作为 zone,其中 self 将作为父区。

errorstackTrace 是在 zone 中未捕获的错误和堆栈跟踪。

函数只能通过 selfparentzone 访问与区相关的功能。它不应依赖于当前区 (Zone.current)。

如果未捕获错误处理器抛出异常,则错误将传递给 parent.handleUncaughtError。如果抛出的对象是 error,则抛出被视为重新抛出,并保留原始 stackTrace。这允许异步错误离开错误区。

实现

typedef HandleUncaughtErrorHandler = void Function(Zone self,
    ZoneDelegate parent, Zone zone, Object error, StackTrace stackTrace);