我试图在我的Flutter应用程序(test.jpg)中显示存储在FireBase中的图像。到目前为止这是我的代码:
StorageReference ref = FirebaseStorage.instance.ref().child("/test.jpg");
String url = (await ref.getDownloadURL()).toString();
print(url);
return url;
}
正确的URL打印到控制台,但如果我然后尝试通过以下方式显示URL:
Text(_imgUrl)
然后我收到以下错误:
类型'Future'不是'String'类型的子类型
有人可以帮我理解问题是什么以及如何纠正它?如果我应该包含任何其他代码或信息,请告诉我。
提前致谢!
方法getDownloadURL()
返回Future<dynamic>
。改变你的url
var do dynamic
的类型。
您可能直接使用_imgUrl
设置ref.getDownloadURL()
而不使用await
关键字。
如果你用var url = ref.getDownloadURL()
设置你的变量,你会得到一个Future<Url>
但如果你用var url = await ref.getDownloadURL()
设置你的变量,你会得到一个Url