getDeepValue<T> method
Reads a value of T type from persistent storage for the given keyPath
when keyPath
is a Json path separated by ':' like 'appColors:primaryColor'
when our Json file is:
{
"appColors": {
"primaryColor": "#2e7d32"
}
}
You can also use getDeepValue
Implementation
T? getDeepValue<T>(String keyPath) {
dynamic _value;
keyPath.split(":").forEach((element) {
if (_value == null)
_value = appConfig[element];
else
_value = _value[element];
});
if (_value != null) {
if (T == Color) _value = _hexStringToColor(_value);
return _value as T;
}
return null;
}