0.9.9 • Published 2 months ago

@n3/react-fileuploader v0.9.9

Weekly downloads
18
License
MIT
Repository
gitlab
Last release
2 months ago

@n3/react-fileuploader

Установка

npm install @n3/react-fileuploader

API

Использование

import { FileUploader } from '@n3/react-fileuploader';

...

<FileUploader
  files={files}
  isShow={isShow}
  disabled={disabled}
  multiple={multiple}
  maxLength={maxLength}
  help={help}
  renderFile={renderFile}
  uploadFile={uploadFile}
  onChange={onChangeFiles}
  showDownloadControl={showDownloadControl}
  showRemoveControl={showRemoveControl}
  getControls={getControls}
  isDragAndDrop={isDragAndDrop}
/>

Props

НазваниеОбязательностьТипЗначение по умолчаниюОписание
buttonProps{ [key: string]: unknown }undefinedДополнительные props кнопки в варианте вывода кнопкой
disabledboolfalseВыключено ли поле ввода
multiplebooltrueВозможен ли выбор нескольких файлов в инпуте
maxLengthnumbernullМаксимальное количество файлов для загрузки (в случае null не ограничено)
helpnodenullТекст подсказки
files+arrayOf [  shape {  - id    custom  - name    string  - url    string  - size    number  - extension    string  - isImage    bool  - uploadErrors    union    - string    - arrayOf         string        }]Список загруженных файлов
inputPropsobject{}Объект дополнительных свойств для inputtype="file" элемента
isShowboolfalseВключен ли режим просмотра (отображается только список файлов, по умолчанию нет кнопки удаления)
isDragAndDropbooltrueПоказывать ли поле для драг-н-дропа
renderFilefunc(fileId, props, FileBlockComponent) => (<FileBlockComponent {...props} key={fileId} />)Функция для переопределения рендера загруженных или загружающихся файлов@param {stringnumber} fileId - id файла@param {Object} props - оригинальные props, которые принимает FileBlockComponent@param {'submitting''ready''error'} props.mode - местоположение файла (список загуженных/загружающихся/загруженных с ошибкой)@param {React.Component} FileBlockComponent - оригинальный компонент для рендера@param {number} index - индекс файла в списке
uploadFile+funcАсихнхронная функция загрузки файла на сервер@async@param {File} file - файл для загрузки@return {Promise<{id, name, url, size, extension}>} - описание загруженного файла
onUploadFilefuncFunction.prototypeОбработчик успшной загрузки файла@param {UploaderFile} file- загруженный файл
onRemoveFilefuncFunction.prototypeОбработчик удаления загруженного файла@param {number} fileIndex - индекс файла для удаления@param {FileId} fileId - id файла для удаления@param {UploaderFile} file - файл для удаления
onChangefuncFunction.prototypeОбработчик изменения списка файлов@param {UploaderFile[]} files - новый список файлов
showDownloadControlbooltrueПоказывать ли кнопку скачивания файла
showRemoveControlbooltrueПоказывать ли кнопку удаления файла
getControlsfuncdefaultGetControlsФункция, создающая конфигурацию кнопок для управления файлом, перекрывает свойства showRemoveControl и showDownloadControl@param {Object} params - объект параметров@param {UploaderFile} params.file - описание файла@param {boolean} params.disabled - выключено ли поле загрузки@param {boolean} params.showDownloadControl - описано выше@param {boolean} params.showRemoveControl - описано выше@param {Function} params.removeFile - функция удаления текущего файла из списка

UploadFileError

Ошибка, которая должна быть вызвана в случае неудачной загрузки файла в функции uploadFile

import { UploadFileError } from '@n3/react-fileuploader';

const uploadFile = async () {
  // ...

  throw new UploadFileError([
    'error1',
    'error2',
    'error3',
  ]);
}
0.9.9

2 months ago

0.9.8

3 months ago

0.9.7

4 months ago

0.9.6

5 months ago

0.9.5

5 months ago

0.9.4

5 months ago

0.9.3

5 months ago

0.9.2

5 months ago

0.9.0

6 months ago

0.8.1

9 months ago

0.9.1

6 months ago

0.8.0

1 year ago

0.7.1

1 year ago

0.7.0

1 year ago

0.6.0

3 years ago

0.5.5

4 years ago

0.5.4

4 years ago

0.5.3

4 years ago

0.5.2

4 years ago

0.5.1

4 years ago

0.5.0

4 years ago

0.4.2

5 years ago

0.4.1

5 years ago

0.4.0

5 years ago

0.3.5

5 years ago

0.3.4

6 years ago

0.3.3

6 years ago

0.3.2

6 years ago

0.3.1

6 years ago

0.3.0

6 years ago

0.2.1

6 years ago

0.2.0

6 years ago

0.1.2

6 years ago

0.1.1

6 years ago

0.1.0

7 years ago