element中upload单图片转base64后添加进数组,请求接口
//先上代码
<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后添加进数组,请求接口相关推荐
- element中upload组件中的确认删除问题
element中upload组件中的确认删除问题 问题原因 <el-uploadclass="upload-demo"dragaction="https://jso ...
- JAVA中如何将大数字或字符串放进数组
JAVA中如何将大数字或字符串放进数组 在JAVA学习过程中字符串.数组.数字之间的 的转换经常用到,记录一些非常基础的转换. 1.将数字转换为字符串:String str = String.valu ...
- java 图片转成base64编码_java语言中如何将一个图片转换为base64编码的数据呢?
摘要: 下文讲述java语言中将图片转换为base64编码的方法分享,如下所示: 例: /* file为图片文件对象 filePath为转换后base64的存储位置 */ public static ...
- python将图片导出数据库_python 将图片转换为base64编码转储进数据库
# _*_ coding: utf-8 _*_ #中间件:拓展工具遍历文件夹,对文件夹图片进行base64编码,写入数据库,并且读取查找方法 __author__ = 'wf15038' __date ...
- Jquery中实现表单提交到SSM后台前进行post请求实现数据的校验
场景 表单中有两个输入框input在提交这个表单前需要对两个输入框进行校验. 即点击提交按钮时会经过校验的方法,此方法会post方式提交到后台,在请求后台成功后的回调方法中会对js变量进行赋值,进而决 ...
- 图片存base64后展示问题
如图片存成clob blob text等格式,为base64格式时,最好存之前拼接前缀 data:image/png;base64, 直接取值在image即可展示 <image src=&q ...
- Element中Upload上传组件的http-request方法
刚开始接触vue,新框架是vue+Element.其中写到上传组件的时候卡住了.问题详细: Upload上传组件中的action是必选参数,但是调后台接口的时候需要手动加参数和token,比较麻烦. ...
- java消除整型数组中重复的元素,排序后输出新数组
法一: import java.util.Arrays; import java.util.Scanner;public class Main {public static void main(Str ...
- vue使用element 上传图片,修改图片
vue使用element 上传图片,修改图片 文章目录 vue使用element 上传图片,修改图片 前言 一.应用场景 1.上传图片并进行放大预览 2.图片上传代码 二.修改已经上传的图片,并展示到 ...
最新文章
- 不用SE11建Structure传Internal Table到Smartforms的方法
- aba会导致问题_护发素会导致掉发?这个纠结多年的问题,真相原来是这回事
- CodeForces - 1543D2 RPD and Rap Sheet (Hard Version)(交互+模拟)
- CSS学习笔记3:选择器及优先级
- 前端学习(3201):react插件
- MySQL DBA面试高频三十问
- 数据库语句数据库学习(3)——数据库的创建与删除
- 2016年度最受欢迎的100个Java库
- 规划设计计算机配置,平面设计电脑配置
- 2021云上智能白皮书 附下载
- php里日期转为时间戳_php时间戳与日期的转换
- Installation failed due to: ‘Failed to commit install session 2076767024 wit
- codewars题目解答Multiples of 3 or 5
- html打开ppt自动播放,ppt文件怎么打开就可以全屏自动播放
- 蓝墨云班课在计算机应用基础的教学,蓝墨云班课在高职《计算机应用基础》教学改革中的应用研究...
- Python开发 CDN查询子域名查询
- MX550性能怎么样 mx550 属于什么档次的显卡
- IIS7配置PHP图解
- 关于谋和断的辩证式扯淡
- 个人中心html更换头像,html 上传头像前预览以及点击头像去选择和更换头像