extractField<R> method

R? extractField<R>(
  1. String key
)

从 Map 中提取字段(最简单的方式) 适用于从 Map<String, dynamic> 中直接获取字段值

如果数据不是 Map 类型,自动返回 null 内部已处理类型转换和异常,用户只需要提供字段名

示例:

final token = response.extractField<String>('token');
final userId = response.extractField<int>('userId');

Implementation

R? extractField<R>(String key) {
  return extract<R>((data) {
    if (data is! Map<String, dynamic>) return null;
    final value = data[key];
    if (value is R) return value;
    if (value == null) return null;
    try {
      return value as R;
    } catch (e) {
      return null;
    }
  });
}