xy-upload
v0.3.1
Published
基于 React Hooks 的上传组件
Downloads
6
Maintainers
Readme
| | | | | | | ------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | | IE 10+ ✔ | Chrome 31.0+ ✔ | Firefox 31.0+ ✔ | Opera 30.0+ ✔ | Safari 7.0+ ✔ |
xy-upload
上传组件
安装
# yarn
yarn add xy-upload
使用例子
import React from "react";
import ReactDOM from "react-dom";
import { Upload } from "xy-upload";
ReactDOM.render(
<Upload action="/upload.do">
<button>上传</button>
</Upload>,
container,
);
API
| 属性 | 说明 | 类型 | 默认值 |
| --------------- | ------------------------------------------------------- | ------------------------------------------------------------------ | ------- |
| disabled | 是否禁用 | boolean | false
|
| accept | 上传文件类型 | string | - |
| multiple | 是否多选 | boolean | false
|
| beforeUpload | 上传前检查, 返回 false 或者 Promise.reject() 则拒绝上传 | BeforeUploadFunc, BeforeUploadPromise | - |
| directory | 是否支持上传目录内所有文件(不支持 IE) | boolean | false
|
| customRequest | 自定义上传 | (options: UploadOptions) => UploadReturn | - |
| name | 服务器接受文件名称 | string | file
|
| action | 上传地址 | string, Function | - |
| data | 附加数据 | object, Function | - |
| withCredentials | 是否启用 withCredentials | boolean | false
|
| headers | 附加请求头 | object | - |
| onStart | 开始上传 | (file: FileExtend) => void | - |
| onSuccess | 成功事件 | (file: FileExtend, response: ResType, xhr: XMLHttpRequest) => void | - |
| onError | 失败事件 | (file: FileExtend, error: Error, response?: ResType) => void | - |
| onProgress | 上传进度事件 | (file: FileExtend, percent: number, event: ProgressEvent) => void | - |
开发
yarn run start
例子
http://localhost:6006
测试
yarn run test
开源许可
xy-upload is released under the MIT license.