微信小程序批量上传图片到七牛(推荐)


Posted in Javascript onDecember 19, 2019

一、引入七牛SDK

具体查看文档

https://github.com/gpake/qiniu-wxapp-sdk/blob/master/README.md

二、封装上传方法upload.js

/**
 * 上传函数
 */
const qiniuUploader = require("qiniuUploader");
const request = require("./request.js")
 
// 初始化七牛相关参数
function initQiniu() {
  var options = {
    uploadURL: 'https://up.qiniup.com',
    region: 'ECN', //
    uptokenURL: request.URL + 'qiniu-token?token=' + getApp().globalData.token,
    // uptoken: 'xxxx',
    domain: 'cdn-mpsoft.tujihome.com/',
  };
  qiniuUploader.init(options);
}
 
function upload(filePath, success, fail) {
  initQiniu();
  // 交给七牛上传
  qiniuUploader.upload(filePath, (res) => {
    success(res);
  }, (error) => {
    console.error('error: ' + JSON.stringify(error));
    fail(error);
  });
}
 
 
/**
 * 批量上传
 * @param images
 */
function batchUpload(images) {
  let uplist = []
  for (let index in images) {
    const path = images[index]['url'];
    const key = images[index]['key'];
    let promise = new Promise((resolve, reject) => {
      qiniuUploader.upload(path, (res) => {
        resolve(res.imageURL)
      }, (error) => {
        reject(error)
      },{
        uploadURL: 'https://up.qiniup.com',
        region: 'ECN', //
        uptokenURL: request.URL + 'qiniu-token?token=' + getApp().globalData.token,
        key: key,
        domain: 'cdn-mpsoft.tujihome.com/',
      });
    })
    uplist.push(promise)
  }
  Promise.all(uplist).then((resultList) => {
    console.log(resultList);
    return resultList;
  }, error => {
    console.log(error)
    throw err;
  })
}
 
module.exports = {
  'upload': upload,
  'BatchUpload' : batchUpload,
}

url:文件路径,key:文件名

batchUpload()传入数组,包含文件路径跟文件名,不需要自定义文件名可以修改下,只调用一次初始化方法,

返回值为包含所有文件路径的数组

三、调用

uploadImage(images) {
    var that = this
    var imageURL = [];
    for (var i of images) {
      i.key = 'gclw_' + Date.parse(new Date()) + Math.random() + '.jpg';
    }
 
    try {
      imageURL = upload.BatchUpload(images);
      return imageURL;
    } catch (e) {
      wx.showModal({
        title: '提示',
        content: e,
        showCancel: false,
      })
    }
  },

结果

微信小程序批量上传图片到七牛(推荐)

总结

以上所述是小编给大家介绍的微信小程序批量上传图片到七牛,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
cnblogs csdn 代码运行框实现代码
Nov 02 Javascript
JS 进度条效果实现代码整理
May 21 Javascript
什么是json和jsonp,jQuery json实例详详细说明
Dec 11 Javascript
跨域传值即主页面与iframe之间互相传值
Dec 09 Javascript
使用js判断控件是否获得焦点
Jan 03 Javascript
js字符串转换成数字与数字转换成字符串的实现方法
Jan 08 Javascript
JS实现黑客帝国文字下落效果
Sep 01 Javascript
JS传参及动态修改页面布局
Apr 13 Javascript
vue-resource调用promise取数据方式详解
Jul 21 Javascript
微信小程序获取地理位置及经纬度授权代码实例
Sep 18 Javascript
JS如何判断对象是否包含某个属性
Aug 29 Javascript
vue 中使用print.js导出pdf操作
Nov 13 Javascript
echarts实现折线图的拖拽效果
Dec 19 #Javascript
Vue中使用Lodop插件实现打印功能的简单方法
Dec 19 #Javascript
Echarts实现单条折线可拖拽效果
Dec 19 #Javascript
Webpack设置环境变量的一些误区详解
Dec 19 #Javascript
Echarts实现多条折线可拖拽效果
Dec 19 #Javascript
js判断一个对象是数组(函数)的方法实例
Dec 19 #Javascript
利用JS如何获取form表单数据
Dec 19 #Javascript
You might like
php cookie名使用点号(句号)会被转换
2014/10/23 PHP
PHP生成随机数的方法实例分析
2015/01/22 PHP
PHP实现简单的新闻发布系统实例
2015/07/28 PHP
php封装好的人民币数值转中文大写类
2015/12/20 PHP
php  单例模式详细介绍及实现源码
2016/11/05 PHP
PHPExcel在linux环境下导出报500错误的解决方法
2017/01/26 PHP
PHP使用xpath解析XML的方法详解
2017/05/20 PHP
php之可变函数的实例详解
2017/09/13 PHP
php获得刚插入数据的id 的几种方法总结
2018/05/31 PHP
Mootools 1.2教程 函数
2009/09/15 Javascript
js bind 函数 使用闭包保存执行上下文
2011/12/26 Javascript
两个select多选模式的选项相互移动(示例代码)
2014/01/11 Javascript
js变形金刚文字特效代码分享
2015/08/20 Javascript
基于PHP和Mysql相结合使用jqGrid读取数据并显示
2015/12/02 Javascript
动态JavaScript所造成一些你不知道的危害
2016/09/25 Javascript
react实现pure render时bind(this)隐患需注意!
2017/03/09 Javascript
单行 JS 实现移动端金钱格式的输入规则
2017/05/22 Javascript
Node.js创建Web、TCP服务器
2017/12/05 Javascript
vue iView 上传组件之手动上传功能
2018/03/16 Javascript
Javascript 实现 Excel 导入生成图表功能
2018/10/22 Javascript
javascript实现考勤日历功能
2018/11/29 Javascript
微信小程序canvas.drawImage完全显示图片问题的解决
2018/11/30 Javascript
react native 原生模块桥接的简单说明小结
2019/02/26 Javascript
vue本地打开build后生成的dist文件夹index.html问题
2019/09/04 Javascript
vue-admin-template配置快捷导航的代码(标签导航栏)
2020/09/04 Javascript
原生JS实现pc端轮播图效果
2020/12/21 Javascript
python获取本机外网ip的方法
2015/04/15 Python
python实现整数的二进制循环移位
2019/03/08 Python
Python QQBot库的QQ聊天机器人
2019/06/19 Python
解决python3.6用cx_Oracle库连接Oracle的问题
2020/12/07 Python
HTML5单页面手势滑屏切换原理
2016/03/21 HTML / CSS
用缩写的指针比较"if(p)" 检查空指针是否可靠?如果空指针的内部表达不是0会怎么样?
2014/01/05 面试题
学生意外伤害赔偿协议书
2014/09/17 职场文书
2015年高校就业工作总结
2015/05/04 职场文书
图书借阅制度范本
2015/08/06 职场文书
浅谈MySQL 亿级数据分页的优化
2021/06/15 MySQL