Flutter 表单构建器包图像选择器 Firestore Flutter

Posted

技术标签:

【中文标题】Flutter 表单构建器包图像选择器 Firestore Flutter【英文标题】:Flutter form builder package image picker firestore flutter 【发布时间】:2020-09-23 08:01:50 【问题描述】:

我正在使用 Flutter 表单生成器包中的 FormBuilderImagePicker

我想使用 img 路径,但我不能这样做

sending() async 
var storageimage =
    FirebaseStorage.instance.ref().child('/google/google');
var task = storageimage.putFile();
imgurl = await (await task.onComplete).ref.getDownloadURL();
// await Firestore.instance.collection('twst').add(
//   
//     'img': imgurl.toString(),
//   ,
// );

我想将该功能与图像选择器一起使用 但问题是我找不到使用 putfile 的路径

【问题讨论】:

【参考方案1】:

要获取FormBuilderImagePicker的路径,类的toString()方法会打印路径。

这里是example,说明如何在容器中打印包含路径的 FormBuilderImagePicker 的文本字段。

然后您需要将图像或文件传递给 putFile 方法。

也可以使用ImagePickerpickImage类方法获取文件。

sending() async 
   
    File image;
    try 
      //Get the file from the image picker and store it
      image = await ImagePicker.pickImage(source: ImageSource.gallery);

    // Throws error when you don't select any image or when you don't have permissions 
     on PlatformException catch (e) 
      return;
    

    //Create a reference to the location you want to upload to in firebase
    StorageReference reference = FirebaseStorage.instance.ref().child("/google/google");

    //Upload the file to Firebase
    StorageUploadTask uploadTask = reference.putFile(image);

    StorageTaskSnapshot taskSnapshot = await uploadTask.onComplete;

    // Waits till the file is uploaded then stores the download URL
    String url = await taskSnapshot.ref.getDownloadURL();

 

【讨论】:

以上是关于Flutter 表单构建器包图像选择器 Firestore Flutter的主要内容,如果未能解决你的问题,请参考以下文章

错误:在我的项目中导入颜色选择器包时,方法“AlwaysWinPanGestureRecognizer...”的参数“事件”

适用于 Web 和移动设备的 Flutter 图像选择器

Flutter Web - 使用电话选择图像

如何获取在 Flutter 中使用图像选择器插件选择的图像的原始路径,而不是复制到缓存?

Flutter/Dart - 如何在其他屏幕上的图像选择器后更新图像

Flutter 图像选择器不会出现在 Android 10 中