Flutter 在initState()方法中使用什么代替等待?

Flutter 在initState()方法中使用什么代替等待?,flutter,Flutter,我得到这个错误 无法将“Future”类型的值分配给 类型为“double”的变量。 因为我们不能在initState()方法中使用assync class\u设置状态扩展状态{ bool_isSwitched=false; double _sliderValue=0; @凌驾 void initState()异步{ _sliderValue=_getInterval(); super.initState(); } ... 未来的_getInterval()异步{。。。 但是如果我们尝试在in

我得到这个错误

无法将“Future”类型的值分配给 类型为“double”的变量。 因为我们不能在initState()方法中使用assync

class\u设置状态扩展状态{
bool_isSwitched=false;
double _sliderValue=0;
@凌驾
void initState()异步{
_sliderValue=_getInterval();
super.initState();
}
...
未来的_getInterval()异步{。。。
但是如果我们尝试在initState()中使用wait,那么我们将得到消息

而不是直接在 initState,调用一个单独的方法来完成这项工作,而无需等待 它


如何在initState中使用_getInterval,即从中接收未来值而不等待它?

如果要运行此代码
\u sliderValue=_getInterval();
,可以将其放在单独的方法中

void myMethod() async{
   _sliderValue = await _getInterval();
}
然后在
initState
方法中调用它,如下所示:

@override
  void initState() async {
    super.initState();
    myMethod();
  }

如果要运行此代码
\u sliderValue=\u getInterval();
,可以将其放在单独的方法中

void myMethod() async{
   _sliderValue = await _getInterval();
}
然后在
initState
方法中调用它,如下所示:

@override
  void initState() async {
    super.initState();
    myMethod();
  }

只需在不等待的情况下调用
\u getInterval
方法,并将其更改为,而不是返回该方法末尾的
\u sliderValue
(可能还会调用
setState

只需调用
\u getInterval
方法而不等待它,并将其更改为,而不是返回值。将其分配给方法末尾的
\u sliderValue
(可能也调用
setState

使用
Future.then()
方法then@Rozerro你得到答案了吗?使用
Future.then()
方法then@Rozerro你得到答案了吗?你赢了我;)initState方法不能是异步的initState方法不能是异步的,但你可以使用Future进入initState方法如果你得到答案,请投票并批准我的答案(-;你赢了我;)initState方法不能是异步的initState方法不能是异步的,但是你可以使用Future-into-initState方法如果你得到你的答案,请投票并批准我的答案(-;