颤振 - > 上传任务方法 OnComplete 不存在



我看到很多练习都放了onComplete,但在我的代码中,这是错误

没有为类型"UploadTask"定义getter"onComplete"。尝试导入定义"onComplete"的库,将名称更正为现有getter的名称,或定义名为"onComplete"的getter或字段

为什么??

void uploadImage() async {
if (safeNeuralNetwork()) {
//Subir imagen a firebase storage
final Reference postImageRef =
FirebaseStorage.instance.ref().child("Post Images");
var timeKey = DateTime.now();

print(sampleImage);
UploadTask uploadTask =
postImageRef.child(timeKey.toString() + ".jpg").putFile(sampleImage);
var imageUrl =
await (await uploadTask.onComplete).ref.getDownloadURL();
url = imageUrl.toString();
print(url);
// Guardar el post en la bbdd
saveToDatabase(url);
//Regresar en Home
Navigator.pop(context);
}
}

我认为您不再需要onComplete,只需要awaitputFile返回的Future

对于最新的代码示例,请始终查看FlutterFire文档,例如:上载文件。

非常感谢它的工作。这是的最终代码

print(sampleImage);
UploadTask uploadTask =
postImageRef.child(timeKey.toString() + ".jpg").putFile(sampleImage);
print('aaa');
print(uploadTask);
var imageUrl = await (await uploadTask).ref.getDownloadURL();
url = imageUrl.toString();
print(url);
// Guardar el post en la bbdd

请改用TaskSnapshot类。您不需要onComplete。

示例:

TaskSnapshot taskSnapshot = await uploadTask;

最新更新