get<T> static method

Future<T?> get<T>({
  1. String? key,
  2. Future<T> debugCallBack()?,
  3. Future<T> productCallBack()?,
})

获取参数或执行回调 key - 参数键值 debugCallBack - 开发环境回调 productCallBack - 生产环境回调

Implementation

static Future<T?> get<T>({
  String? key,
  Future<T> Function()? debugCallBack,
  Future<T> Function()? productCallBack,
}) async {
  try {
    // 如果指定了 key,优先从参数表中获取
    if (key != null && instance._params.containsKey(key)) {
      final value = instance._params[key];
      if (value is T) {
        return value;
      }
      // 类型不匹配时执行环境对应的回调
      return await _executeCallback<T>(debugCallBack, productCallBack);
    }

    return await _executeCallback<T>(debugCallBack, productCallBack);
  } catch (e) {
    debugPrint('YkParamsUtil get error: $e');
    return null;
  }
}