ionic选择多张图片上传的示例代码


Posted in Javascript onOctober 10, 2017

在上一篇博客ionic本地相册、拍照、裁剪、上传(单图完全版) 中,跟大家分享了ionic项目选择本地图片、拍照、裁剪、上传到服务器的内容,但是上一节的内容由于使用了Cordova的Camera插件进行了图片选择与拍摄,所以每次只能支持1张图片的选择与上传。上一篇博客中的内容适合用于头像情景。

在本节中,跟大家分享使用Corodva的ImagePicker插件,实现多图选择与上传。废话不多说,进入主题。

插件安装

cordova plugin add corodva-plugin-imagepicker
cordova plugin add cordova-plugin-file-transfer

定义图片选择服务

angular.module('starter.services', [])
//配置单张图片选择
.factory('SelectPicture', function(UploadFile, Toast) {
 return {
 /**
  * 从图库选择多张图片
  */
 choosePictures: function() {
  window.imagePicker.getPictures(function(res){
  for(var i = 0; i < res.length; i++){
   UploadFile.uploadFile(res[i], "我的服务器接口地址");//传递自己的服务器接口地址
  }
  }, function(err){
  alert(err);
  }, {
  maximumImagesCount: 10, 
  quality: 80
  });
 }
 }
})

定义文件上传服务

//文件上传
.factory('UploadFile', function(Toast) {
 return {
 /**
  * 上传文件到服务器
  *
  * @param fileUrl 文件路径
  * @param server 服务器接口
  */
 uploadFile: function(fileUrl, server) {
  document.addEventListener("deviceready", onDeviceReady, false);
  function onDeviceReady() {
  var options = new FileUploadOptions();
  options.fileKey = "BeanYon";//后台获取文件的键值
  options.fileName = fileUrl.substr(fileUrl.lastIndexOf('/') + 1);
  options.mimeType = "image/jpeg";
  options.chunkedMode = false;

  var params = {};//这里可添加自定义参数
  options.params = params;

  var ft = new FileTransfer();
  ft.upload(fileUrl, 
     encodeURI(server), 
     success, 
     err, 
     options);
  }

  function success(r){
   Toast.show("图片已经成功上传");
  }

  function err(error){
   Toast.show("上传头像失败,请确保网络正常后再试");
  }
 }
 }
})

在Controller中调用

angular.module('starter.controllers', [])
.controller('UsedUploadCtrl', function($scope, SelectPicture) {
 /**
 * 选择图片并上传
 */
 $scope.uploadImage = function(){
 SelectPicture.choosePictures($scope);
 }
})

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
基于jquery实现的移入页面上空文本框时,让它变为焦点,移出清除焦点
Jul 26 Javascript
javascript静态页面传值的三种方法分享
Nov 12 Javascript
用json方式实现在 js 中建立一个map
May 02 Javascript
jquery模拟LCD 时钟的html文件源代码
Jun 16 Javascript
让浏览器DOM元素最后加载的js方法
Jul 29 Javascript
js实现背景图片感应鼠标变化的方法
Feb 28 Javascript
JS实现仿新浪微博发布内容为空时提示功能代码
Aug 19 Javascript
两种方法解决javascript url post 特殊字符转义 + &amp; #
Apr 13 Javascript
react-router4按需加载(踩坑填坑)
Jan 06 Javascript
浅谈express.js框架中间件(middleware)
Apr 07 Javascript
JS 实现发送短信验证码的“59秒后重新发送验证短信”功能
Aug 23 Javascript
Vue CLI3移动端适配(px2rem或postcss-plugin-px2rem)
Apr 27 Javascript
详解ionic本地相册、拍照、裁剪、上传(单图完全版)
Oct 10 #Javascript
防止页面url缓存中ajax中post请求的处理方法
Oct 10 #Javascript
Vue实现数字输入框中分割手机号码的示例
Oct 10 #Javascript
JS判断数组那点事
Oct 10 #Javascript
template.js前端模板引擎使用详解
Oct 10 #Javascript
AngularJS中table表格基本操作示例
Oct 10 #Javascript
AngularJS中控制器函数的定义与使用方法示例
Oct 10 #Javascript
You might like
基于命令行执行带参数的php脚本并取得参数的方法
2016/01/25 PHP
laravel http 自定义公共验证和响应的方法
2019/09/29 PHP
laravel入门知识点整理
2020/09/15 PHP
jQuery插件-jRating评分插件源码分析及使用方法
2012/12/28 Javascript
基于NodeJS的前后端分离的思考与实践(四)安全问题解决方案
2014/09/26 NodeJs
jQuery实现ichat在线客服插件
2014/12/29 Javascript
wangEditor编辑器失去焦点后仍然可以在原位置插入图片分析
2015/05/06 Javascript
js生成验证码并直接在前端判断
2015/05/15 Javascript
浏览器中url存储的JavaScript实现
2015/07/07 Javascript
javascript实现省市区三级联动下拉框菜单
2015/11/17 Javascript
微信小程序--onShareAppMessage分享参数用处(页面分享)
2017/04/18 Javascript
js使用html2canvas实现屏幕截取的示例代码
2017/08/28 Javascript
剖析Angular Component的源码示例
2018/03/23 Javascript
JavaScript 对引擎、运行时、调用堆栈的概述理解
2018/10/22 Javascript
Vue.js特性Scoped Slots的浅析
2019/02/20 Javascript
js实现图片上传即时显示效果
2019/09/30 Javascript
python封装对象实现时间效果
2020/04/23 Python
Python的Tornado框架异步编程入门实例
2015/04/24 Python
Python基于hashlib模块的文件MD5一致性加密验证示例
2018/02/10 Python
新手常见6种的python报错及解决方法
2018/03/09 Python
pycharm中显示CSS提示的知识点总结
2019/07/29 Python
关于python字符串方法分类详解
2019/08/20 Python
python matplotlib拟合直线的实现
2019/11/19 Python
使用opencv将视频帧转成图片输出
2019/12/10 Python
基于SQLAlchemy实现操作MySQL并执行原生sql语句
2020/06/10 Python
css3圆角样式分享自定义按钮样式
2013/12/27 HTML / CSS
Html5在手机端调用相机的方法实现
2020/05/13 HTML / CSS
Stubhub英国:购买体育、演唱会和剧院门票
2018/06/10 全球购物
亚洲领先的旅游体验市场:Voyagin
2019/11/23 全球购物
创伤外科专业推荐信范文
2013/11/19 职场文书
总经理职责
2013/12/22 职场文书
医院总经理岗位职责
2014/02/04 职场文书
尊老爱亲美德少年事迹材料
2014/08/14 职场文书
走群众路线学习笔记
2014/11/06 职场文书
健康状况证明书
2014/11/26 职场文书
创业计划书之珠宝饰品
2019/08/26 职场文书