github地址: https://github.com/nervgh/angular-file-upload

Directives(指令)

  • nv-file-drop
<!-- 最少配置 -->
<elementnv-file-dropuploader="{FileUploader}"></element>
<!-- 最多配置 -->
<elementnv-file-dropuploader="{FileUploader}"options="{Object}"filters="{String}"></element>

属性 uploader 必须是 FileUploader的一个实例。
属性 options 可能是 {FileItem} 的设置或者自定义设置。
属性 filters 可能是用,隔开的过滤器名称,比如: 'filterName1, filterName2',这些过滤器必须如下预定义:

uploader.filters.push({name:'filterName1', fn:function() {/* your code here */}});
uploader.filters.push({name:'filterName2', fn:function() {/* your code here */}});
  • nv-file-select
<!-- 最少配置 -->
<inputtype="file"nv-file-selectuploader="{FileUploader}"/>
<!-- 最多配置 -->
<inputtype="file"nv-file-selectuploader="{FileUploader}"options="{Object}"filters="{String}"/>
  • nv-file-over
<!-- 最少配置 -->
<elementnv-file-overuploader="{FileUploader}"></element>
<!-- 最多配置 -->
<elementnv-file-overuploader="{FileUploader}"over-class="{String}"></element>

Service(服务)

  • FileUploader

FileUploader

属性

  • url {String}: 上传文件的服务器路径
  • alias {String}:  包含文件的名称,默认是file
  • queue {Array}: 上传队列
  • progress {Number}: 上传队列的进度,只读
  • headers {Object}: 上传的头文件信息, 浏览器需支持HTML5
  • formData {Array}: 与文件一起发送的表单数据
  • filters {Array}: 在文件加入上传队列之前应用过滤器.,如果过滤器返回true则文件加入队列中
  • autoUpload {Boolean}: 文件加入队列之后自动上传,默认是false
  • method {String}: 请求方式,默认是POST,浏览器需支持HTML5
  • removeAfterUpload {Boolean}: 文件上传成功之后从队列移除,默认是false
  • isHTML5 {Boolean}: 如果浏览器支持HTML5上传则返回true,只读
  • isUploading {Boolean}: 文件正在上传中返回true,只读
  • queueLimit {Number} : 最大上传文件数量(预定义)
  • withCredentials {Boolean} : 使用CORS,默认是false, 浏览器需支持HTML5

方法

  • addToQueue function(files[, options[, filters]]) {: Add items to the queue, where files is a {FileList|File|HTMLInputElement}options is an {Object} andfilters is a {String}.  添加项到上传队列中,files 是 {FileList|File|HTMLInputElement}, options 是 {Object} 以及 filters 是 {String}
  • removeFromQueue function(value) {: Remove an item from the queue, wherevalue is {FileItem} or index of item.  从上传队列移除项,value 可以是 {FileItem} 或者项的序号
  • clearQueue function() {: Removes all elements from the queue.  移除上传队列所有的元素
  • uploadItem function(value) {: Uploads an item, where value is {FileItem} or index of item.  上传项, value 可以是 {FileItem} 或者项的序号
  • cancelItem function(value) {: Cancels uploading of item, where value is{FileItem} or index of item.  取消上传的项
  • uploadAll function() {: Upload all pending items on the queue.  将上传队列中所有的项进行上传
  • cancelAll function() {: Cancels all current uploads.  取消所有当前上传
  • destroy function() {: Destroys a uploader.
  • isFile function(value) {return {Boolean};}: Returns true if value is {File}.
  • isFileLikeObject function(value) {return {Boolean};}: Returns true if value is{FileLikeObject}.
  • getIndexOfItem function({FileItem}) {return {Number};}: Returns the index of the{FileItem} queue element.  返回项在上传队列中的序号
  • getReadyItems function() {return {Array.<FileItems>};}: Return items are ready to upload.  返回准备上传的项
  • getNotUploadedItems function() {return {Array.<FileItems>};}: Return an array of all pending items on the queue  返回上传队列中未上传的项

回调函数

  • onAfterAddingFile function(item) {: 添加文件到上传队列后
  • onWhenAddingFileFailed function(item, filter, options) {: 添加文件到上传队列失败后
  • onAfterAddingAll function(addedItems) {: 添加所选的所有文件到上传队列后
  • onBeforeUploadItem function(item) {: 文件上传之前
  • onProgressItem function(item, progress) {: 文件上传中
  • onSuccessItem function(item, response, status, headers) {: 文件上传成功后
  • onErrorItem function(item, response, status, headers) {: 文件上传失败后
  • onCancelItem function(item, response, status, headers) { - 文件上传取消后
  • onCompleteItem function(item, response, status, headers) {: 文件上传完成后
  • onProgressAll function(progress) {: 上传队列的所有文件上传中
  • onCompleteAll function() {: 上传队列的所有文件上传完成后
 
成功上传文件的回调函数顺序是:onAfterAddingFile — onAfterAddingAll — onBeforeUploadItem — onProgressItem — onProgressAll — onSuccessItem — onCompleteItem — onCompleteAll

FileItem

属性

  • url {String}: Path on the server in which this file will be uploaded  上传文件的服务器路径
  • alias {String}: Name of the field which will contain the file, default is file  包含文件的名称,默认是file
  • headers {Object}: Headers to be sent along with this file. HTML5 browsers only.  上传的头文件信息, 浏览器需支持HTML5
  • formData {Array}: Data to be sent along with this file  与文件一起发送的表单数据
  • method {String}: It's a request method. By default POST. HTML5 browsers only.  请求方式,默认是POST,浏览器需支持HTML5
  • withCredentials {Boolean} : enable CORS. HTML5 browsers only.  使用CORS,默认是false, 浏览器需支持HTML5
  • removeAfterUpload {Boolean}: Remove this file from the queue after uploading  上传之后从上传队列移除该文件
  • index {Number} - A sequence number upload. Read only.  上传文件在上传队列中的序号,只读
  • progress {Number}: File upload progress percentage. Read only.  文件上传的进度,只读
  • isReady {Boolean} - File is ready to upload. Read only.  文件是否准备好上传,只读
  • isUploading {Boolean}true if the file is being uploaded. Read only.  文件是否正在上传中,只读
  • isUploaded {Boolean}true if the file was uploaded. Read only.  文件是否已经上传,只读
  • isSuccess {Boolean}true if the file was uploaded successfully. Read only.  文件是否已经上传成功,只读
  • isCancel {Boolean} : true if uploading was canceled. Read only.  文件是否取消上传,只读
  • isError {Boolean} - true if occurred error while file uploading. Read only.  文件是否上传错误,只读
  • uploader {Object}: Reference to the parent Uploader object for this file. Read only.  上传该文件的Uploader ,只读

方法

  • remove function() {: Remove this file from the queue  从上传队列移除该文件
  • upload function() {: Upload this file  上传该文件
  • cancel function() {: Cancels uploading of this file  取消上传该文件

回调函数

  • onBeforeUpload function() {: Fires before uploading an item.  上传该文件之前
  • onProgress function(progress) {: On file upload progress.  上传该文件的过程
  • onSuccess function(response, status, headers) {: On file successfully uploaded  成功上传该文件后
  • onError function(response, status, headers) {: On upload error  上传该文件出错后
  • onCancel function(response, status, headers) { - On cancel uploading  取消上传该文件后
  • onComplete function(response, status, headers) {: On file upload complete (independently of the sucess of the operation)  完成上传该文件后

Filters(过滤器)

注册过滤器:

var uploader =newFileUploader({
filters: [{
name:'yourName1',
// A user-defined filterfn:function(item) {
returntrue;
}
}]
}); // 另一种
uploader.filters.push({
name:'yourName2',
fn:function(item) {
returntrue;
}
});

预定义的过滤器:

  • folder
  • queueLimit

angular-file-upload 中文API的更多相关文章

  1. angularjs file upload插件使用总结

    之前由于项目需要,决定使用angularjs做前端开发,在前两个项目中都有文件上传的功能,因为是刚接触angularjs,所以对一些模块和模块间的依赖不是很了解.都是由其他大神搭好框架,我只做些简单的 ...

  2. Angular中文api

    Angular中文api:http://docs.ngnice.com/api

  3. File upload in ASP.NET Core web API

    参考1:File upload in ASP.NET Core web API https://www.janaks.com.np/file-upload-asp-net-core-web-api/ ...

  4. jquery file upload 后台收到的文件名中文乱码, filename中文乱码

    在jQuery File Upload.js文件里,在以下这个js中有个成员叫做 _initXHRData, 是一个function, 在这个function的最后部分有一个if-else分支,如下:

  5. java 上传3(uploadify中文api)

    jquery文件上传控件 Uploadify 基于jquery的文件上传控件,支持ajax无刷新上传,多个文件同时上传,上传进行进度显示,删除已上传文件. 要求使用jquery1.4或以上版本,fla ...

  6. Angular2 File Upload

    Angular2 File Upload Install Install the components npm install ng2-file-upload --save github: https ...

  7. Bootstrap FileInput中文API整理

    这段时间做项目用到bootstrap fileinput插件上传文件,在用的过程中,网上能查到的api都不是很全,所以想着整理一份比较详细的文档,方便自己今后使用,也希望能给大家带来帮助,如有错误,希 ...

  8. Bootstrap FileInput中文API文档

    Bootstrap FileInput中文API整理 这段时间做项目用到bootstrap fileinput插件上传文件,在用的过程中,网上能查到的api都不是很全,所以想着整理一份比较详细的文档, ...

  9. 【转】Bootstrap FileInput中文API整理

    Bootstrap FileInput中文API整理 这段时间做项目用到bootstrap fileinput插件上传文件,在用的过程中,网上能查到的api都不是很全,所以想着整理一份比较详细的文档, ...

  10. Bootstrap FileInput 上传 中文 API 整理

    Bootstrap FileInput 上传  中文 API 整理 上传插件有很多 但是公司用的就是 Bootstrap FileInput 自己就看了看  会用就行 自己都不知道每个值是干嘛用的就问 ...

随机推荐

  1. NYOJ(21),BFS,三个水杯

    题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=21 BFS判环,vis标记状态即可. #include <stdio.h> # ...

  2. linux select 学习

    一.select介绍 函数原型: #include <sys/select.h> int select(int maxfdp1, fd_set *restrict readfds, fd_ ...

  3. Mac环境下用Java(Sikuli+Robot)实现页游自动化

    转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ Sikulix(以前叫Sikuli)在Mac电脑的环境配置步骤如下: 1.从官网上下载Sikuli ...

  4. spring webmvc使用ResponseBody前,在配置文件中的配置

    spring的版本不同, 导致配置引用地址不同 首先引用一个jar包 <dependency> <groupId>com.fasterxml.jackson.core</ ...

  5. centos Linux 统计某个文件夹占用空间大小

    转载自 http://www.07net01.com/linux/centos_Linux_tongjimougewenjianjiazhanyongkongjiandaxiao_12510_1346 ...

  6. 走进Linux之systemd启动过程

    Linux系统的启动方式有点复杂,而且总是有需要优化的地方.传统的Linux系统启动过程主要由著名的init进程(也被称为SysV init启动系统)处理,而基于init的启动系统被认为有效率不足的问 ...

  7. BZOJ 2568 比特集合

    题目链接:http://www.lydsy.com:808/JudgeOnline/problem.php?id=2568 题意:维护一个集合S,支持以下操作: (1)INS M : 将元素 M 插入 ...

  8. 粒子群算法 Particle Swarm Optimization, PSO(转贴收藏)

    粒子群算法(1)----粒子群算法简介 http://blog.csdn.net/niuyongjie/article/details/1569671 粒子群算法(2)----标准的粒子群算法 htt ...

  9. session 登陆浏览,并实现session注销登陆

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  10. zoj 1010 (线段相交判断+多边形求面积)

    链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=10 Area Time Limit: 2 Seconds      Mem ...