【发布时间】:2020-12-01 07:32:26
【问题描述】:
我的代码允许使用universal_html.InputElement uploadInput = universal_html.FileUploadInputElement();web Flutter打开文件上传窗口,并选择必要的文件将它们加载到项目中。如果用户没有选择任何照片并单击关闭/取消窗口,我想对此做出反应。 我如何理解用户关闭窗口?
final completer = Completer<List<String>>();
universal_html.InputElement uploadInput = universal_html.FileUploadInputElement();
uploadInput.multiple = true;
uploadInput.accept = 'image/*';
uploadInput.click();
uploadInput.addEventListener('change', (e) async {
final files = uploadInput.files;
Iterable<Future<String>> resultsFutures = files.map((file) {
final reader = universal_html.FileReader();
reader.readAsDataUrl(file);
reader.onError.listen((error) => completer.completeError(error));
return reader.onLoad.first.then((_) => reader.result as String);
});
final results = await Future.wait(resultsFutures);
completer.complete(results);
});
universal_html.document.body.append(uploadInput);
final List<String> images = await completer.future;
uploadInput.remove();
【问题讨论】:
标签: flutter dart flutter-web