Licence
ISC
Version
1.0.19
Deps
4
Vulns
13
Weekly
0
idsp-web-seed2-uploader
分页组件
安装方法
1. 下载程序包
npm i idsp-web-seed2-uploader --save
2. 配置文件依赖
找到 index.html 文件的systemjs配置,加入 idsp-web-seed2-uploader 配置
SystemJS.config({
transpiler: 'ts',
typescriptOptions: {
// ...
},
packages: {
//...
// 组件设置
webuploader: {main: 'dist/webuploader.js', format: 'global'},
'idsp-web-seed2-uploader': {main: 'src/lib/uploader.ts'},
"src": {
//...
}
},
meta: {
'*.less': {loader: 'less'},
'*.css': {loader: 'css'},
// ...
},
map: {
// ...
'idsp-web-seed2-uploader': 'node_modules/idsp-web-seed2-uploader',
}
});
3. 在项目src/common/directives/directives.ts中依赖组件
//...
import uploader from "idsp-web-seed2-uploader";
export const mod = module('directives', [...others, uploader]);
4. 接下来就可以使用上传组件了
<uploader
files="Ctrl.files"
option="Ctrl.uploadOption"
[file-queued='Ctrl.fn($file)']
[file-dequeued='Ctrl.fn($file)']
[upload-start='Ctrl.fn($file)']
[upload-before-send='Ctrl.fn($chuck, $data, $headers)']
[upload-progress='Ctrl.fn($file, $percentage)']
[upload-error='Ctrl.fn($file, $error)']
[upload-success='Ctrl.fn($file, $response)']
[error='Ctrl.fn($type)']
>
</uploader>
@Route({
...
controllerAs : 'Ctrl'
})
@Controller
exports class PageCtrl{
public files:UploadFile[];
public uploaderOption:UploaderOption = {
dnd : '#dnd-wrapper',
auto:true,
server : 'uploader.shtml'
};
// 上传事件处理
fn(...){
...
}
}
指令属性参数
| 参数 | 类型 | 描述 |
|---|---|---|
| files | UploadFile[] | 文件上传队列 |
| option | UploaderOption | 上传组件的配置 |
| file-queued (可选) | 事件 | 当一个文件加入上传队列时触发 , `$file` 表示当前加入队列的文件 |
| file-dequeued (可选) | 事件 | 当一个文件移出上传队列时触发 |
| upload-start (可选) | 事件 | 当一个文件开始上传时触发 |
| upload-before-send (可选) | 事件 | 当一个文件开始上传之前触发 |
| upload-progress (可选) | 事件 | 当文件的上传进度发生变化时触发 |
| upload-error (可选) | 事件 | 当一个文件上传发生错误时触发 |
| upload-success (可选) | 事件 | 当一个文件上传成功时触发,`$response` 是服务器的返回数据 |
| error (可选) | 事件 | 当发生错误时触发 |
UploadFile 属性
file.name:表示文件名称(String)file.size:表示文件大小(Number)file.sizeUnit:计算好的文件大小(String)如:12MBfile.percentage:上传进度(Number),从0到100file.response:服务器返回数据,默认为null,当状态为success时可使用file.state:文件状态(String),'ready'|'uploading'| 'success'
UploaderOption 参数
| 参数 | 类型 | 描述 |
|---|---|---|
| server | String | 文件上传处理服务器 |
| method (可选) | String | 上传请求类型 默认 :'post' |
| multiple (可选) | Boolean | 是否允许多选文件 |
| dnd (可选) | String (css selector) | 开启拖拽添加文件功能 |
| auto (可选) | Boolean | 是否开启自动上传文件功能 |
| formData (可选) | Object | 上传文件时附带参数 |
| name (可选) | String | 服务器用来获取文件的参数名,默认 `file[]` |
| accept (可选) | Object | 指定可选择的文件类型 |
| accept.title | String | 描述文字 |
| accept.extensions | String | 允许文件的后缀名,多个用逗号分隔如:`jpg,exe,gif,pdf` |
| accept.mimeTypes | String | 指定文件的miniType,多个使用逗号分隔如:`image/*,text/*` |
| fileSingleSizeLimit (可选) | Number | 限制单个文件的大小 |