getItem method

  1. @override
Future getItem({
  1. required String key,
})

When passed a key name, will return that key's value, or null if the key does not exist, in the given Storage object.

NOTE for Web: this method will have effect only if the iframe has the same origin.

Officially Supported Platforms/Implementations:

  • Android native WebView
  • iOS
  • MacOS
  • Web

Implementation

@override
Future<dynamic> getItem({required String key}) async {
  var itemValue = await controller?.evaluateJavascript(source: """
  window.$webStorageType.getItem("$key");
  """);

  if (itemValue == null) {
    return null;
  }

  try {
    return json.decode(itemValue);
  } catch (e) {}

  return itemValue;
}