ionic选择多张图片上传的示例代码
在上一篇博客ionic本地相册、拍照、裁剪、上传(单图完全版)中,跟大家分享了ionic项目选择本地图片、拍照、裁剪、上传到服务器的内容,但是上一节的内容由于使用了Cordova的Camera插件进行了图片选择与拍摄,所以每次只能支持1张图片的选择与上传。上一篇博客中的内容适合用于头像情景。
在本节中,跟大家分享使用Corodva的ImagePicker插件,实现多图选择与上传。废话不多说,进入主题。
插件安装
cordovapluginaddcorodva-plugin-imagepicker cordovapluginaddcordova-plugin-file-transfer
定义图片选择服务
angular.module('starter.services',[])
//配置单张图片选择
.factory('SelectPicture',function(UploadFile,Toast){
return{
/**
*从图库选择多张图片
*/
choosePictures:function(){
window.imagePicker.getPictures(function(res){
for(vari=0;i
定义文件上传服务
//文件上传
.factory('UploadFile',function(Toast){
return{
/**
*上传文件到服务器
*
*@paramfileUrl文件路径
*@paramserver服务器接口
*/
uploadFile:function(fileUrl,server){
document.addEventListener("deviceready",onDeviceReady,false);
functiononDeviceReady(){
varoptions=newFileUploadOptions();
options.fileKey="BeanYon";//后台获取文件的键值
options.fileName=fileUrl.substr(fileUrl.lastIndexOf('/')+1);
options.mimeType="image/jpeg";
options.chunkedMode=false;
varparams={};//这里可添加自定义参数
options.params=params;
varft=newFileTransfer();
ft.upload(fileUrl,
encodeURI(server),
success,
err,
options);
}
functionsuccess(r){
Toast.show("图片已经成功上传");
}
functionerr(error){
Toast.show("上传头像失败,请确保网络正常后再试");
}
}
}
})
在Controller中调用
angular.module('starter.controllers',[])
.controller('UsedUploadCtrl',function($scope,SelectPicture){
/**
*选择图片并上传
*/
$scope.uploadImage=function(){
SelectPicture.choosePictures($scope);
}
})
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。