//先上代码

<template>
<!-- data绑定的参数getuploadloge: [{url: '',name: ''}],-->
<!-- 编辑操作模板this.uploadstatue = false //在父类给该upload组件添加v-if事件this.$nextTick(() => {this.uploadstatue = true})this.form = res.data//给upload传参this.getuploadloge = [{name: res.data.Name,url: res.data.Logo,status: 0}] --><!-- 新增模板this.uploadstatue = false//在父类给该upload组件添加v-if事件this.$nextTick(() => {this.uploadstatue = true})//给upload传参this.getuploadloge[0].name = ''this.getuploadloge[0].url = ''this.getuploadloge[0].status = 1--><!--上边的添加事件是在父类引用改子类的标签里加v-if事件,来保证组件从新加载,否则组件不会刷新--><div><p  >只能上传jpg/png文件,且不超过1024kb</p><el-uploadaction="#":auto-upload="false":file-list="fileList":multiple = "false":limit="1"accept=".jpg,.jpeg,.png"list-type="picture-card":class="{hide:hideUpload}":on-change="maximg":before-upload="beforeAvatarUpload":on-remove="handleRemove"><!-- <img :src="backimg"> --><i class="el-icon-plus"></i></el-upload></div></template><script>
export default {props: ['getuploadloge'],data() {return {hideUpload: false, //隐藏添加窗口dialogVisible: false, //照片模态框fileList: [], //图片数组uploaddate: [], //子组件数组backimg: '../../../static/images/bank_upload_logo.png'}},mounted() {//获取图片数据this.getupload()},methods: {//获取文件数据
    getupload() {this.uploaddate = Object.assign(this.getuploadloge)if (this.uploaddate[0].status === 1) {this.fileList.length = 0this.handleRemove('', this.fileList)} else {if (this.uploaddate[0].name) {this.fileList = this.uploaddatethis.hideUpload = this.fileList.length >= 1}}},//文件列表移除文件时的钩子
    handleRemove(file, fileList) {if ((fileList.length = 0)) {this.hideUpload = true} else {this.hideUpload = fileList.length >= 1this.$emit('uploaddate', '')}},handlePictureCardPreview(file) {},//文件状态改变时的钩子,添加文件、上传成功和上传失败时都会被调用
    maximg(file, fileList) {const isIMAGE = file.name.substring(file.name.lastIndexOf('.') + 1)const isLt1M = file.size / 1024 / 1024if (isIMAGE !== 'jpg' && isIMAGE !== 'png' && isIMAGE !== 'jpeg') {this.$message.error('上传文件只能是jpg和png格式!')this.fileList.length = 0this.handleRemove(file, fileList)}if (isLt1M > 1) {this.$message.error('上传文件大小不能超过 1MB!')this.fileList.length = 0this.handleRemove(file, fileList)}this.hideUpload = fileList.length >= 1let reader = new FileReader() //html5读文件//转BASE64
      reader.readAsDataURL(file.raw)reader.onload = e => {this.uploaddate = e.target.result//读取完毕后调用接口this.$emit('uploaddate', this.uploaddate)}return isIMAGE && isLt1M},beforeAvatarUpload(file, fileList) {// console.log('123465789')
    }},name: 'Upload'
}
</script>
<style>
.hide .el-upload--picture-card {display: none;
}
</style>
<style scoped>
</style>

//因为我的dialog写的公用组件,需要的可以看下我的其他文章.

//因为我的新增与修改是一个模态框,所以判断那一块可以自行修改.

//file-list绑定的数组格式是:File-list:[{name:名字,url:地址}]

//只要符合这个数组就可以回显.

//其中的属性代表什么官网里有详细解释,在这里就不一一解释了.

//说几个特殊点的.accept属性是点击上传按钮后,弹出的图片选择框的默认后缀.目的是为了加载迅速,如果不加此属性,点击后页面文件过多的情况下会加载很慢.

//注意:accept后面跟的不是验证,accept后面跟的不是验证,accept后面跟的不是验证,如果需要验证请在方法中写校验规则

转载于:https://www.cnblogs.com/maruihua/p/11038322.html

element中upload单图片转base64后添加进数组,请求接口相关推荐

  1. element中upload组件中的确认删除问题

    element中upload组件中的确认删除问题 问题原因 <el-uploadclass="upload-demo"dragaction="https://jso ...

  2. JAVA中如何将大数字或字符串放进数组

    JAVA中如何将大数字或字符串放进数组 在JAVA学习过程中字符串.数组.数字之间的 的转换经常用到,记录一些非常基础的转换. 1.将数字转换为字符串:String str = String.valu ...

  3. java 图片转成base64编码_java语言中如何将一个图片转换为base64编码的数据呢?

    摘要: 下文讲述java语言中将图片转换为base64编码的方法分享,如下所示: 例: /* file为图片文件对象 filePath为转换后base64的存储位置 */ public static ...

  4. python将图片导出数据库_python 将图片转换为base64编码转储进数据库

    # _*_ coding: utf-8 _*_ #中间件:拓展工具遍历文件夹,对文件夹图片进行base64编码,写入数据库,并且读取查找方法 __author__ = 'wf15038' __date ...

  5. Jquery中实现表单提交到SSM后台前进行post请求实现数据的校验

    场景 表单中有两个输入框input在提交这个表单前需要对两个输入框进行校验. 即点击提交按钮时会经过校验的方法,此方法会post方式提交到后台,在请求后台成功后的回调方法中会对js变量进行赋值,进而决 ...

  6. 图片存base64后展示问题

    如图片存成clob  blob  text等格式,为base64格式时,最好存之前拼接前缀 data:image/png;base64, 直接取值在image即可展示 <image src=&q ...

  7. Element中Upload上传组件的http-request方法

    刚开始接触vue,新框架是vue+Element.其中写到上传组件的时候卡住了.问题详细: Upload上传组件中的action是必选参数,但是调后台接口的时候需要手动加参数和token,比较麻烦. ...

  8. java消除整型数组中重复的元素,排序后输出新数组

    法一: import java.util.Arrays; import java.util.Scanner;public class Main {public static void main(Str ...

  9. vue使用element 上传图片,修改图片

    vue使用element 上传图片,修改图片 文章目录 vue使用element 上传图片,修改图片 前言 一.应用场景 1.上传图片并进行放大预览 2.图片上传代码 二.修改已经上传的图片,并展示到 ...

最新文章

  1. 不用SE11建Structure传Internal Table到Smartforms的方法
  2. aba会导致问题_护发素会导致掉发?这个纠结多年的问题,真相原来是这回事
  3. CodeForces - 1543D2 RPD and Rap Sheet (Hard Version)(交互+模拟)
  4. CSS学习笔记3:选择器及优先级
  5. 前端学习(3201):react插件
  6. MySQL DBA面试高频三十问
  7. 数据库语句数据库学习(3)——数据库的创建与删除
  8. 2016年度最受欢迎的100个Java库
  9. 规划设计计算机配置,平面设计电脑配置
  10. 2021云上智能白皮书 附下载
  11. php里日期转为时间戳_php时间戳与日期的转换
  12. Installation failed due to: ‘Failed to commit install session 2076767024 wit
  13. codewars题目解答Multiples of 3 or 5
  14. html打开ppt自动播放,ppt文件怎么打开就可以全屏自动播放
  15. 蓝墨云班课在计算机应用基础的教学,蓝墨云班课在高职《计算机应用基础》教学改革中的应用研究...
  16. Python开发 CDN查询子域名查询
  17. MX550性能怎么样 mx550 属于什么档次的显卡
  18. IIS7配置PHP图解
  19. 关于谋和断的辩证式扯淡
  20. 个人中心html更换头像,html 上传头像前预览以及点击头像去选择和更换头像

热门文章

  1. oralce之 10046对Hash Join分析
  2. js弹性运动滑动的菜单
  3. Mina airQQ聊天 client篇(三)
  4. 阿里巴巴国际站询盘是什么意思?如何提高询盘率
  5. 基于数据挖掘的旅游推荐APP(二):主界面布局
  6. putty连接虚拟fedaro失败的解决方法
  7. TCP/IP的层次结构以及各层数据封装的过程 (一)
  8. Python 打印不换行
  9. 中间件业务在网易轻舟容器平台的性能调优实践
  10. 掌握这 11 个方法论,搞定一场完美技术面试!