AsyncBindableProperty<TValue> constructor

AsyncBindableProperty<TValue>(
  1. AsyncValueGetter<TValue> futureGetter, {
  2. TValue handle(
    1. TValue
    )?,
  3. void onStart()?,
  4. void onEnd()?,
  5. void onSuccess(
    1. TValue
    )?,
  6. void onError(
    1. dynamic
    )?,
  7. PropertyValueChanged<AsyncSnapshot<TValue>>? valueChanged,
  8. TValue? initial,
})

具备处理异步请求的绑定属性

futureGetter 用于获取 Future<TValue> 的方法

handle 指定请求成功时对结果进行处理的方法

onStart 指定请求发起时执行的方法

onEnd 指定请求结束时执行的方法

onSuccess 指定请求成功时执行的方法

onError 指定请求出错时执行的方法

valueChanged 指定属性值变更后的回调方法

initial 指定初始值

Implementation

AsyncBindableProperty(AsyncValueGetter<TValue> futureGetter,
    {TValue Function(TValue)? handle,
    void Function()? onStart,
    void Function()? onEnd,
    void Function(TValue)? onSuccess,
    void Function(dynamic)? onError,
    PropertyValueChanged<AsyncSnapshot<TValue>>? valueChanged,
    TValue? initial})
    : _futureGetter = futureGetter,
      _handle = handle,
      _onStart = onStart,
      _onEnd = onEnd,
      _onSuccess = onSuccess,
      _onError = onError,
      _value = initial == null
          ? AsyncSnapshot<TValue>.nothing()
          : AsyncSnapshot<TValue>.withData(ConnectionState.none, initial),
      super(valueChanged: valueChanged);