getDataValue<T> method

T getDataValue<T>(
  1. String fieldNameOrPath, [
  2. T? defaultValue
])

Extracts a single value from data by a dot-notation path and tries to cast it to the specified generic type.

If explicitly set, returns defaultValue on missing path.

For more details about the casting rules, please refer to caster.extract().

Example:

final data = {"a": {"b": [{"b1": 1}, {"b2": 2}, {"b3": 3}]}};
final record = RecordModel(data: data);
final result0 = record.getDataValue<int>("a.b.c", "missing"); // "missing"
final result1 = record.getDataValue<int>("a.b.2.b3"); // 3
final result2 = record.getDataValue<String>("a.b.2.b3"); // "3"

Implementation

T getDataValue<T>(String fieldNameOrPath, [T? defaultValue]) {
  return caster.extract<T>(data, fieldNameOrPath, defaultValue);
}