如何从Flutter中的Future对象(Future <int>)获取原始值?

时间:2019-02-07 08:34:50

标签: dart flutter

我正在获取Future实例,同时获得如下的sharedPreference值

 Future<int>  getCounterValue() async{
    SharedPreferences preferences= await SharedPreferences.getInstance();
    return preferences.getInt("counter") ;
   }

然后我要从该Future实例获取整数值。请提前帮助谢谢。

2 个答案:

答案 0 :(得分:2)

没有办法从异步执行中恢复到同步执行。

您只能使用await.then((param) { print(param); })

获取值

您需要提供更多背景信息,以提出有关如何解决实际问题的具体建议。

答案 1 :(得分:0)

对于非异步方法:

void methodSync() {
  getCounterValue().then(
    (value){
      // do something with value
      print(value);
    }
  );
}

对于异步方法:

void methodAsync() async{
  int value = await getCounterValue();
  // do something with value
  print(value);
}