Angularjs上传图片实例详解
•上传图片需要引入插件ngFileUpload,使用bower安装方法:bowerinstallng-file-upload--save,安装后需要在命名app的名字js文件中注入,如下所示:
(function(){
angular.module('app',[
'ionic','ngStorage','ngFileUpload'
]);
})();
•在相应的html中引入文件路径:
•如何使用呢?在html文件中使用ngf-select
更改头像
在相应的controller中:
//上传单个文件
functionuploadFiles(file,errFiles){
vm.imgInfo=file;
console.log(file);
if(file){
vm.img=file.name;//测试使用
//Service.upload('','',{file:file})//开发使用
}
}
在http请求如下:
//文件上传预设配置
Upload.setDefaults({
ngfAccept:"'.jpg,.png,.gif,.jpeg'",
ngfDropDisabled:'true',
ngfPattern:'.jpg,.png,.gif,.jpeg',
ngfMaxSize:'2MB'
});
//上传文件
functionupload(ctrl,name,param){
vardeferred=$q.defer(),
interfaceName=ctrl+'/'+name,
backendDetail=getBackendDetail(interfaceName);
//上传文件到服务器
Upload.upload({
url:backend.url+':'+backendDetail.port+'/'+backendDetail.service+'/'+interfaceName,
data:param||{}
}).then(function(data){
//service返回数据
varresult=data.data;
//200代表接口调用成功
if(data.status===200){
//数据库返回错误信息
if(result&&serviceErrors[result.returnCode]){
deferred.reject('ErrorServices');
swal(result.message,'错误状态码:'+result.returnCode,'error');
}elseif(!result.dataInfo){
deferred.reject('ErrorImage');
swal('图片上传失败','请检查图片属性','error');
}else{
deferred.resolve(result);
}
}else{
deferred.reject('ErrorServices');
swal('提交操作失败','错误状态码:'+data.status,'error');
}
},function(error){
deferred.reject('ErrorServices');
swal('提交操作失败','错误状态码:'+error.status,'error');
});
returndeferred.promise;
}
总结
以上所述是小编给大家介绍的Angularjs上传图片实例详解,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!