diff --git a/src/components/uploader/uploader.vue b/src/components/uploader/uploader.vue new file mode 100644 index 00000000..247bc3dd --- /dev/null +++ b/src/components/uploader/uploader.vue @@ -0,0 +1,186 @@ + + + + + +———————————————— +版权声明:本文为CSDN博主「bydongxin」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 +原文链接:https://blog.csdn.net/bydongxin/article/details/108367086 diff --git a/src/views/authenticRight/index.vue b/src/views/authenticRight/index.vue index 35344a0f..7641e72c 100644 --- a/src/views/authenticRight/index.vue +++ b/src/views/authenticRight/index.vue @@ -113,7 +113,7 @@ :rules="[{ required: true, message: '请填写被核查人姓名' }]" > @@ -638,27 +638,69 @@ }, methods:{ - onOversize(){ + onOversize(file) { + console.log(file); + Toast('文件大小不能超过 16mb'); this.$toast({ icon: 'error', // 找到自己需要的图标 - message: '文件大小超过4MB,上传失败', + message: '上传失败!文件大小不能超过 16m', duration:"1000", - onClose:function(){ - } }) }, - afterRead(file) { - const data = new FormData(); - data.append("file", this.fileList[0].file); - uploadFile(data).then(res => { - if(res.code == 200){ - this.xcdcform.idcardCheckedBy = res.idcardCheckedBy - this.xcdcform.nameCheckedBy = res.nameCheckedBy - this.xcdcform["fileUrl"] = res.url + afterRead(file){ + // 创建Canvas对象(画布) + let canvas = document.createElement('canvas') + // 获取对应的CanvasRenderingContext2D对象(画笔) + let context = canvas.getContext('2d') + // 创建新的图片对象 + let img = new Image() + // 指定图片的DataURL(图片的base64编码数据) + img.src = file.content + // 监听浏览器加载图片完成,然后进行进行绘制 + const height = 166 + const width = 316 + img.onload = () => { + const h = img.height + const w = img.width + let ch = img.height/4 + let cw = img.width/4 + let canvas = document.createElement('canvas') + let ctx = canvas.getContext('2d') + canvas.height = ch + canvas.width = cw + ctx.clearRect(0,0,cw,ch) + ctx.drawImage(img,0,0,cw,ch) + let base_img = canvas.toDataURL('image/jpeg') + const blobBin = atob(base_img.split(',')[1]) + let d = [] + for (let i=0;i { + if(res.code == 200){ + this.xcdcform.idcardCheckedBy = res.idcardCheckedBy + this.xcdcform.nameCheckedBy = res.nameCheckedBy + this.xcdcform["fileUrl"] = res.url + } + }) + this.fileList = [] + } this.fileList = [] }, + /*afterRead(file) { + const data2 = new FormData(); + data2.append("file", file.file); + uploadFile(data2).then(res => { + if(res.code == 200){ + this.xcdcform.idcardCheckedBy = res.idcardCheckedBy + this.xcdcform.nameCheckedBy = res.nameCheckedBy + this.xcdcform["fileUrl"] = res.url + } + }) + this.fileList = [] + },*/ changeFn(val) { }, confirmFn(){