import { uploadFile } from "./serve.js" export const upload = (data, url, type) => { return uploadFile({ url: url, //请求后缀 filePath: data, type: type, header: { 'Content-Type': 'multipart/form-data' } }) } //压缩文件 export function compress(img) { console.log('开始压缩'); let that = this return new Promise((res) => { plus.io.resolveLocalFileSystemURL(img, (entry) => { //通过URL参数获取目录对象或文件对象 entry.file((file) => { // 可通过entry对象操作图片 console.log('压缩前图片信息:' + JSON.stringify(file)); //压缩前图片信息 if (file.size > 504800) { // 如果大于500Kb进行压缩 plus.zip.compressImage({ // 5+ plus.zip.compressImage 了解一下,有详细的示例 src: img, //src: 压缩原始图片的路径 width: '40%', //dst: (String 类型 )压缩转换目标图片的路径 height: '40%', //width,height: (String 类型 )缩放图片的宽度,高度 quality: 10, //quality: (Number 类型 )压缩图片的质量 overwrite: true, //overwrite: (Boolean 类型 )覆盖生成新文件 // format:'jpg' //format: (String 类型 )压缩转换后的图片格式 }, (event) => { console.log('压缩后图片信息:' + JSON.stringify( event)); // 压缩后图片信息 this.imageInfo = event let newImg = event.target; res(newImg); //返回新的图片地址,在uploadFile之前接收 }, function(err) { // console.log('Resolve file URL failed: ' + err.message); }); } else { //else小于500kb跳过压缩,直接返回现有的src res(img); } }); }, (e) => { // 返回错误信息 // console.log('Resolve file URL failed: ' + e.message); }); }) }