Flutter 如何知道返回值是否是未来值

Flutter 如何知道返回值是否是未来值,flutter,dart,future,Flutter,Dart,Future,我试图知道从回调返回的变量(定义为返回动态)是否是未来变量。目标是知道是否等待它 以下是我想知道的示例代码: dynamic returnedValue=callbackPassedFromArguments(); //下一行是我想知道的 如果(isFuture(返回值)) { 动态realReturnedValue=等待returnedValue; } .... 是否有一个函数可以替换我提到的isFuturepsudo函数?要测试某个东西是否是未来的,只需执行类型检查returnedVal

我试图知道从回调返回的变量(定义为返回动态)是否是未来变量。目标是知道是否等待它

以下是我想知道的示例代码:


dynamic returnedValue=callbackPassedFromArguments();
//下一行是我想知道的
如果(isFuture(返回值))
{
动态realReturnedValue=等待returnedValue;
}
....

是否有一个函数可以替换我提到的
isFuture
psudo函数?

要测试某个东西是否是未来的,只需执行类型检查
returnedValue is future

在这种情况下,我会:

if(返回值为未来值){
returnedValue=等待returnedValue;
}
你也可以这样做:

returnedValue=等待returnedValue;

结果是相同的,但后一个代码将引入异步延迟,因为它实际上将
返回值
包装到未来中,如果它不是未来,则等待该未来。

要测试某个东西是否是未来,只需执行类型检查
返回值是未来

在这种情况下,我会:

if(返回值为未来值){
returnedValue=等待returnedValue;
}
你也可以这样做:

returnedValue=等待returnedValue;

结果是相同的,但后一个代码将引入异步延迟,因为它实际上将
returnedValue
包装到未来中,如果它不是未来,则等待该未来。

答案是future.value,它完全忽略它得到的参数是值还是未来。这正是我所需要的。
Future.value
Future
的构造函数。它不会告诉您现有的
对象
是否是
未来
。要回答您最初的问题,您可以使用
returnedValue is Future
。或者无条件地等待返回值。答案是Future.value,它完全忽略它得到的参数是值还是未来。这正是我所需要的。
Future.value
Future
的构造函数。它不会告诉您现有的
对象
是否是
未来
。要回答您最初的问题,您可以使用
returnedValue is Future
。或者无条件地等待返回值。