首页 > 解决方案 > Flutter:如何从 sharedpreferences 中获取价值?当我调试时,值为“未来的实例”'

问题描述

我使用输入数据

Future<bool> saveSession() async{
    final SharedPreferences pref = await SharedPreferences.getInstance();
    return pref.setString('test', 'Some Data');
  }

并使用获取数据

Future<String> readSession() async{
    final SharedPreferences pref = await SharedPreferences.getInstance();
    return pref.getString('test');
  }

当我尝试使用它进行调试时

打印(读取会话());// 值是 'Future' 的实例

我不知道为什么??

结果是“未来”的实例

标签: flutter

解决方案


要获取字符串值,您需要先解析Future对象。基本上有两种方法可以实现:

1

print(await readSession());

2

readSession().then((v) => print(v));

您可以在官方文档中阅读有关异步操作的更多信息 - https://dart.dev/tutorials/language/futures


推荐阅读