【发布时间】:2020-07-18 21:53:54
【问题描述】:
所以我有这个显示股票价格的小部件。我使用 HTTP 调用来获取股票价格,当然这个函数是异步的,在正文中我等待网络服务完成,然后返回股票价格。但是,每次我尝试打印此 stockPrice 时,它都会说这是一个未来,但我不知道如何打开它?我已经在我的网络调用中等待,所以不应该打开它并给我背后的真正价值吗?
StockService stockService = new StockService();
var stockPrice = stockService.getStockPriceBySymbol(symbols.elementAt(x));
print(stockPrice);
网络服务:
Future<dynamic> getStockPriceBySymbol(String symbol) async {
NetworkService networkService = NetworkService(
'$alphaStockApiURL?function=GLOBAL_QUOTE&symbol=$symbol&apikey=$kAlphaStockAPIKey');
var stockData = await networkService.getData();
// print(stockData['Global Quote']['05. price']);
return stockData['Global Quote']['05. price'];
}
【问题讨论】:
-
getStockPriceBySymbol()也返回Future,所以你也需要await它
标签: flutter asynchronous dart