Как стать автором
Обновить

Комментарии 11

Хороший пример того, как, порой, такая простая вещь может оказаться очень полезной людям!

Спасибо

 classNames={{
    "file-drop-zone_box": myClassNames.myFileDropZoneBoxClass,
    "file-drop-zone_button": myClassNames.myButtonClass,
    "file-icon": myClassNames.myFileIconClass,
    "file-box": myClassNames.myFileBoxClass,
    "file-box__file-button": myClassNames.myFileButton
    }}

Имена классов выглядят достаточно странно, где-то есть нижние подчеркивания, где-то нет, где-то подчеркивание одиночное, где-то двойное (привет БЭМ). Я бы сделал как в material ui

classNames={{
  root: '...',
  box: '...',
  button: '...',
  icon: '...',
}}

Я бы ещё добавил слоты, чтобы было можно полностью заменять реализацию компонента на кастомную. Как в material ui

https://mui.com/material-ui/api/slider/#slider-prop-slots

А так выглядит не плохо. Хотя на статью, конечно, не тянет. Для статьи было бы полезно описать как это реализовывалось и с какими трудностями столкнулись. И почему не подошли готовые библиотеки.

Спасибо , учту !

Правильно ли я понял, что ты взял готовую библиотеку обернул ее своим компонентом и теперь говоришь что я это твоя библиотека ?)

Нет , я использовал библиотеку для создания шаблона

Интересная статья, и компонент вроде полезный. Вот только не пойму, на дворе 2024 год, зачем все упорно продолжают писать в инструкциях "npm install --save"?

Спасибо ) Видимо привычка

Подушню. Неплохо было-бы добавить обработку ошибок, возможность использования middleware и добавить ограничение не только на общий размер файлов, но и отдельно на каждый файл.

Обработка ошибок уже есть , про ограничение размера каждого файла классная идея , спасибо реализую )

Какие планируешь добавить преимущества перед всем известным react-dropzone?

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории