Как выбрать файл для сервера загрузки во Flutter Web?

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

1 ответ

Решение

Я написал подробный ответ здесь о доступе к файлу и читать его содержимое. Для тебя это может быть хорошим началом.

Короче говоря

  1. Создать FileUploadInputElement от dart:html такой пакет. FileUploadInputElement element = FileUploadInputElement()..id = "file_input";.
  2. Использовать dart:ui с platformViewRegistry.registerViewFactory метод регистрации вашего элемента.
ui.platformViewRegistry.registerViewFactory("add_input", (int viewId) {
      return element;
    });
  1. Использовать HTMLElementView виджет, чтобы прикрепить этот элемент к макету вашего веб-приложения.

HtmlElementView(viewType: 'add_input')

  1. Использовать FileReader читать файлы, доступные через FileUploadInputElement.files следующим образом.

fileReader.readAsArrayBuffer(element.files[0]);

  1. Ручка onLoad а также onError события при необходимости.

  2. Нажав кнопку загрузки, обработайте FileUploadInputElement.files массив для доступа к файлам и загрузки его на сервер.

Другие вопросы по тегам