Вы можете использовать React Dropzone Uploader , который дает вам предварительный просмотр файлов (включая эскизы изображений) из коробки, а также обрабатывает загрузки для вас.
Загрузки имеют индикаторы выполнения, и их можно отменить или перезапустить. Пользовательский интерфейс полностью настраиваемый.
Вот пример того, как загружать файлы напрямую в корзину S3, используя предварительно подписанные URL-адреса.
Полное раскрытие: я написал эту библиотеку.