loading.dart 441 Bytes
import 'package:flutter_easyloading/flutter_easyloading.dart';

Future<T?> loading<T>(Function block, {String loadingText = '加载中...'}) async {
  if (loadingText.isNotEmpty) {
    showLoading(loadingText);
  }
  try {
    return await block();
  } catch (e) {
    rethrow;
  } finally {
    dismissLoading();
  }
}

void showLoading(String text) {
  EasyLoading.show(status: text);
}

void dismissLoading() {
  EasyLoading.dismiss();
}