Dcloud+mui 压缩上传图片到服务器
chooseImgFromAlbums选择图片chooseImgFromPictures拍照changeToLocalUrl转换成可用的路径uploadpic.compressImg压缩图片uploadpic.avatar上传图片到oss服务器
/**
* 上传图片
*/
function UPLOADPIC() {
//上传图片
this.avatar = function(compressurl) {
bzpcommon.showLoading();
//上传的参数
var uploadoptions = {
method: "post",
timeout: 30,
retry: 3,
retryInterval: 10,
};
//创建上传任务
var task = plus.uploader.createUpload(bzpapi.API("FILE_UPLOAD"), uploadoptions, function(t, status) {
//关闭loading
bzpcommon.closeWaiting();
// 上传完成
if(status == 200) {
var body = JSON.parse(t.responseText);
if(body.retCode === "SUCCESS") {
$.toast("上传头像成功");
$(".bzp-avatar")[0].src = compressurl;
//更新个人信息
// get_customer_detail();
} else if(body.retCode === "FAIL") {
$.toast(body.info.message);
} else {
$.toast("上传头像失败");
}
} else {
$.toast("上传头像失败");
}
console.log("----图片上传返回值---");
console.log(JSON.stringify(t));
});
task.addFile(compressurl, {
key: "file"
});
task.addData("token", bzpcommon.user.token());
task.start();
};
//压缩
this.compressImg = function(src) {
var filename = src.substring(src.lastIndexOf('/') + 1);
var opions = {
src: src,
dst: '_doc/' + filename,
overwrite: true,
width: '300px', //这里指定了宽度,同样可以修改
format: 'jpg',
quality: 90 //图片质量不再修改,以免失真
};
var _this = this;
//show loading
bzpcommon.showLoading();
var successCB = function(evt) {
console.log(JSON.stringify(evt));
//上传头像
_this.avatar(evt.target);
};
var errorCB = function(err) {
console.log(JSON.stringify(err));
bzpcommon.closeWaiting();
$.toast("图片压缩失败");
};
plus.zip.compressImage(opions, successCB, errorCB);
};
};
var uploadpic = new UPLOADPIC();
//转换为本地路径
function changeToLocalUrl(path) {
plus.io.resolveLocalFileSystemURL(path, function(entry) {
STATE.uploadPic = entry.toLocalURL();
$(".bzp-avatar")[0].src = STATE.uploadPic;
console.log(STATE.uploadPic);
uploadpic.compressImg(STATE.uploadPic);
});
}
//选择图片
function chooseImgFromAlbums() {
plus.gallery.pick(function(file) {
changeToLocalUrl(file);
}, function(err) {
console.log(JSON.stringify(err));
$.toast("选择图片失败");
}, {
filter: 'image',
multiple: false
});
}
//拍照
function chooseImgFromPictures() {
plus.camera.getCamera().captureImage(function(file) {
changeToLocalUrl(file);
}, function(err) {
console.log(JSON.stringify(err));
$.toast("选择图片失败");
}, {
index: '1',
});
}
作者:我的昵称好听吗
链接:https://www.jianshu.com/p/0a3ffccb2f11
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
Dcloud+mui 压缩上传图片到服务器的更多相关文章
- Android 上传图片到服务器 okhttp一
[目录] (一)上传图片到服务器一 ---------------------------------Android代码 (二)上传图片到服务器二--------------------------- ...
- 通过android 客户端上传图片到服务器
昨天,(在我的上一篇博客中)写了通过浏览器上传图片到服务器(php),今天将这个功能付诸实践.(还完善了服务端的代码) 不试不知道,原来通过android 向服务端发送图片还真是挺麻烦的一件事. 上传 ...
- Wcf for wp8 上传图片到服务器,将图片名字插入数据库字段(五)
环境:.NET Framework 3.5 服务: IIS EXpress托管 WCF服务程序 配置:Web.config <!--<connectionStrings> <a ...
- .NET开发微信小程序-上传图片到服务器
1.上传图片分为几种: a:上传图片到本地(永久保存) b:上传图片到本地(临时保存) c:上传图片到服务器 a和b在小程序的api文档里面有.直接说C:上传图片到服务器 前端代码: /* 上传图片到 ...
- Android 上传图片到服务器二--------调用相机7.0以上权限问题
[目录] (一)上传图片到服务器一 ---------------------------------Android代码 (二)上传图片到服务器二--------------------------- ...
- java后台中处理图片辅助类汇总(上传图片到服务器,从服务器下载图片保存到本地,缩放图片,copy图片,往图片添加水印图片或者文字,生成二维码,删除图片等)
最近工作中处理小程序宝箱活动,需要java画海报,所以把这块都快百度遍了,记录一下处理的方法,百度博客上面也有不少坑! 获取本地图片路径: String bgPath = Thread.current ...
- iOS开发通过AFNetworking上传图片到服务器
iOS开发通过AFNetworking上传图片到服务器 AFHTTPSessionManager *manager = [AFHTTPSessionManager manager]; manager. ...
- c#批量上传图片到服务器示例分享
这篇文章主要介绍了c#批量上传图片到服务器示例,服务器端需要设置图片存储的虚拟目录,需要的朋友可以参考下 /// <summary> /// 批量上传图片 /// </summary ...
- java input 实现调用手机相机和本地照片上传图片到服务器然后压缩
在微信公众号里面需要上传头像,时间比较紧,调用学习jssdk并使用 来不及 就用了input 使用input:file标签, 去调用系统默认相机,摄像,录音功能,其实是有个capture属性,直接说 ...
随机推荐
- C语言中static的使用
在开发过程中.我们常常会须要定义一些static类型的变量或者函数.我们接下来来详细聊一下static: 1.修饰变量 当static来修饰一个变量时,就注定了这个变量的可见范围和生命周期: (1)当 ...
- ES cross cluster search跨集群查询
ES 5.3以后出的新功能.测试demo如下: 下载ES 5.5版本,然后分别本机创建2个实例,配置如下: cluster.name: xx1 network.host: 127.0.0.1 http ...
- storm集群安装配置
1.上传解压 2.进入到storm的conf目录 接上图 启动三台节点的zookeeper集群 启动和查看 Storm 在 nimbus.host 所属的机器上启动 nimbus 服务和 logvi ...
- dom4j组装xml 以及解析xml
dom4j组装xml 以及解析xml: 1.下载dom4j的jar包,地址:https://dom4j.github.io/ 2.java代码: package test; import java.i ...
- Webfont 的兼容性问题[持续更新]
低版安卓手机的 webview 显示不了,另外黑莓手机显示出来是这样: 生成工具: 离线字体生成工具:webfont 在线字体生成平台:icomoon.io, iconfont.cn均有问题 其他一些 ...
- 把asp:CheckBoxList 变成单选框
单选框代码 <asp:CheckBoxList runat="server" RepeatDirection="Horizontal" ID=" ...
- <Sicily>Polynomial
一.题目描述 Given a polynomial and the value of the variable x, you task is to calculate the value of the ...
- Kubernetes1.5 集成dashboard
Kubernetes1.5 集成dashboard 配置kubernetes的dashboard相对简单.同样的,只需要从源码中获取到dashboard-controller.yaml及dashboa ...
- Ubuntu上使用过的命令,Linux常用命令,mount 硬盘挂载, ls 列表list命令,cp 复制copy命令,mkdir 创建文件夹 ,nano 编辑器,cat 文档合并,chmod 文件权限,ssh win10连接ubuntu服务器的步骤
man 帮助 > man ls # ubuntu的帮助 tar.gz 压缩解压 > tar -zcvf yzn.tar.gz /home/yzn # 压缩 > tar -zxvf y ...
- XWIKI的搭建
原文地址:https://my.oschina.net/gywbest/blog/780569 一 应用背景描述 在平时的运维工作中,把常规工作进行文档整理非常重要,无论是平时工作处理或是工作交接,实 ...