Flutter Web: Как вы сжимаете изображение / файл? - PullRequest
0 голосов
/ 17 марта 2020

Flutter Web в настоящее время находится в стадии бета-тестирования, поэтому не хватает доступной информации / ресурсов о том, как это сделать.

Я не смог найти пакеты флаттера, совместимые с сетью, для этого. Любые советы?

Вот мой код:

uploadImage() async {
File file;
FileReader fileReader = FileReader();
InputElement uploadInput = FileUploadInputElement();
uploadInput.click();
uploadInput.onChange.listen((event) {
  file = uploadInput.files.first;
  fileReader.readAsDataUrl(file);
  fileReader.onLoadEnd.listen((event) {
    if (file.type == "image/jpg" || file.type == "image/jpeg" || file.type == "image/png") {
      String base64FileString = fileReader.result.toString().split(',')[1];

      //COMPRESS FILE HERE

      setState(() {
        userImgFile = file;
        userImageByteMemory = base64Decode(base64FileString);
      });
    } else {
      CustomAlerts().showErrorAlert(context, "Image Upload Error", "Please Upload a Valid Image");
    }
  });
});
}

1 Ответ

0 голосов
/ 17 марта 2020

В настоящее время я создам облачную функцию для изменения размера / сжатия файла при его загрузке в хранилище Firebase в качестве обходного пути.

Вот ссылка на то, как это сделать для тех, кто нуждается в Обходной путь, пока это не будет решено: https://www.youtube.com/watch?v=OKW8x8-qYs0

...