DkStateQueryFlutterExtension<T> extension

flutter原生拓展 适用于 ValueNotifier<DkStateQuery

final stateNotifier = ValueNotifier<DkStateQuery<List<String>>>(DkStateQueryIdle());
...
Widget build(BuildContext context) {
 return stateNotifier.displayDkStateQuery(
   loadingBuilder: () => CircularProgressIndicator(),
   errorBuilder: (message) => Text('Error: $message'),
   emptyBuilder: () => Text('No Data'),
   initialBuilder: () => Text('Please start loading'),
   successBuilder: (data) => ListView(
     children: data.map((item) => ListTile(title: Text(item))).toList(),
   ),
 );
}
on

Methods

display({Widget loadingBuilder()?, Widget errorBuilder(String message)?, Widget emptyBuilder()?, Widget initialBuilder()?, required Widget successBuilder(T data), Widget retryBuilder()?}) Widget

Available on ValueNotifier<DKStateQuery<T>>, provided by the DkStateQueryFlutterExtension extension

将 DkStateQuery 转换为 Flutter Widget 显示 @param loadingBuilder 加载中状态的 Widget 构建器 @param errorBuilder 错误状态的 Widget 构建器,接收错误信息 @param emptyBuilder 空数据状态的 Widget 构建器 @param initialBuilder 初始状态的 Widget 构建器 @param successBuilder 成功状态的 Widget 构建器,接收数据 @param retryBuilder 重试按钮的 Widget 构建器 @return Widget 根据当前状态构建的 Widget
query({required Future<T> query(), bool isEmpty(T data)?}) Future<void>

Available on ValueNotifier<DKStateQuery<T>>, provided by the DkStateQueryFlutterExtension extension

执行查询并更新状态 @param query 异步查询函数,返回数据 @param isEmpty 可选的空数据判断函数 @return Future