【发布时间】:2020-10-13 13:11:33
【问题描述】:
我在下面的函数中遇到了一些问题。该函数正在处理来自 Firebase 存储的异步获取。我正在使用它来获取我存储在那里的文件的名称和 url。 问题在于获取网址。具体就行了:
String url = element.getDownloadURL().toString();
getDownloadedURL() 是 Firebase 的未来。我试图等待它,但它不会识别等待,我猜是由于“元素”。 总体效果是,当我通过 Future 构建器在我的 UI 中使用它时,名称显示得很好,但 Url 没有。正在检索它,因为打印语句显示它。但它没有被等待,所以 UI 已经更新。 尝试了很多东西,但还没有找到解决方案,所以任何帮助将不胜感激。
Future<void> getImageData() async {
final imagesFromStorage = await fb
.storage()
.refFromURL('gs://little-big-deals.appspot.com')
.child('images')
.listAll();
imagesFromStorage.items.forEach((element) {
print(element.name);
String url = element.getDownloadURL().toString();
print(url.toString());
imageData.add(ImageData(element.name, url.toString()));
});
}
非常感谢
【问题讨论】:
标签: flutter dart flutter-web