父区域的一个修改后的视图。
此类允许实现一个区域方法,在保留原始区域知识的同时调用父区域的方法。
自定义区域(通过 Zone.fork 或 runZoned 创建)可以提供区域大多数方法的实现。这类似于在 Zone 上重写方法,但这个机制不需要子类化。
一个自定义区域函数(通过一个 ZoneSpecification 提供)通常记录或包装其参数,然后使用提供的 ZoneDelegate 将操作委托给其父区域。
虽然区域可以访问其父区域(通过 Zone.parent),但出于两个原因建议调用提供的父委托的方法:
- 委托方法接受一个额外的
zone
参数,它是操作发起的区域。 - 委托调用更高效,因为实现知道如何跳过只会委托给父区域的区域。
属性
- hashCode → int
- 此对象的哈希码。无设置器继承
- runtimeType → Type
- 对象运行时类型的表示。无设置器继承
方法
-
createPeriodicTimer(
Zone zone, Duration period, void f(Timer timer)) → Timer -
createTimer(
Zone zone, Duration duration, void f()) → Timer -
errorCallback(
Zone zone, Object error, StackTrace? stackTrace) → AsyncError? -
fork(
Zone zone, ZoneSpecification? specification, Map? zoneValues) → Zone -
handleUncaughtError(
Zone zone, Object error, StackTrace stackTrace) → void -
noSuchMethod(
Invocation invocation) → dynamic - 访问不存在的函数或属性时调用。继承
-
print(
Zone zone, String line) → void -
registerBinaryCallback<
R, T1, T2> (Zone zone, R f(T1 arg1, T2 arg2)) → ZoneBinaryCallback< R, T1, T2> -
registerCallback<
R> (Zone zone, R f()) → ZoneCallback< R> -
registerUnaryCallback<
R, T> (Zone zone, R f(T arg)) → ZoneUnaryCallback< R, T> -
run<
R> (Zone zone, R f()) → R -
runBinary<
R, T1, T2> (Zone zone, R f(T1 arg1, T2 arg2), T1 arg1, T2 arg2 ) → R -
runUnary<
R, T> (Zone zone, R f(T arg), T arg ) → R -
scheduleMicrotask(
Zone zone, void f()) → void -
toString(
) → String - 此对象的字符串表示形式。继承
运算符
-
operator ==(
Object other) → bool - 相等运算符。继承