ForkHandler typedef
自定义Zone.fork实现函数的类型。
接收处理器注册的Zone作为self
,将请求转发到self
父区域的处理器作为parent
,以及错误未被捕获的当前区域作为zone
,其中self
将作为父区域。
处理器应该创建一个新的区域,该区域以zone
作为其直接父区域。
specification
和zoneValues
是传递给zone
的Zone.fork的。它们指定了新区域应具有的自定义区域处理器和区域变量。
自定义处理器可以在调用parent.fork(zone, specification, zoneValues)
之前更改规范或区域值,但它必须调用parent
的ZoneDelegate.fork以创建一个有效的Zone对象。
该函数必须仅通过self
、parent
或zone
访问与区域相关的功能。它不应依赖于当前区域(Zone.current)。
实现
typedef ForkHandler = Zone Function(Zone self, ZoneDelegate parent, Zone zone,
ZoneSpecification? specification, Map<Object?, Object?>? zoneValues);