此功能保存在FireStore中: `Future'的实例不是URL。 如果没有toString方法,则会产生错误“无法将动态动态分配给字符串”。
onPressed: () {
final StorageReference ref = FirebaseStorage.instance
.ref()
.child('images')
.child('image4.jpg');
ref.putFile(image);
final String downloadUrl = ref.getDownloadURL().toString();
Firestore.instance.collection('images').add({"url": downloadUrl});
})
答案 0 :(得分:0)
ref.getDownloadURL()
是未来,所以您需要await
onPressed: () async {
final StorageReference ref = FirebaseStorage.instance
.ref()
.child('images')
.child('image4.jpg');
StorageUploadTask uploadTask = ref.putFile(image);
String downloadUrl = await (await uploadTask.onComplete).ref.getDownloadURL();
Firestore.instance.collection('images').add({"url": downloadUrl});
}