vue上传图片,并回显图片

未用组件库,原生的input输入框提交
这个看需求吧,用组件库的话,可以减少挺多代码的,但是这个的后端,因为只能单独提交照片,所以我就使用js了。逻辑绕绕的。

<input v-show="false" type="file" accept="image/*" @change="tirggerFile($event)" ref="input" /><div style="" @click="openImg" class="changeimgurl"><span v-if="changeimg==''">点击上传文章附图</span><img style="height:100%;width:100%;" v-if="changeimg!=''" :src="changeimg" /></div><van-button  ref="button" plain hairline type="info"  size="normal" class="changeimg" @click.prevent="submitupdataimg">+提交图片</van-button>
export default {data () {return {changeimg: ''}},methods: {// 预览上传头像图片tirggerFile: function (event) {const file = event.target.files[0]console.log(file)console.log(file.size)if (file.size > (5 * 1024 * 1024)) {Toast.fail('图片大小不能超过 5M')return 'error'}this.file = filelet url = ''var reader = new FileReader()reader.readAsDataURL(file)const that = thisconsole.log(reader)reader.onload = function (e) {url = this.result.substring(this.result.indexOf(',') + 1) // 图像预显base64路径that.changeimg = 'data:image/png;base64,' + url}},openImg () {this.$refs.input.click()},// 将数据提交给服务器submitupdataimg () {console.log('提交图片')// this.$refs.button.setAttribute('disabled', 'disabled')console.log(this.file)var testfile = this.file// alert提示框,确定是否需要上传。async function beforeClose (action, done) {if (action === 'confirm') {setTimeout(done, 500)console.log(testfile)console.log(testfile.name)if (testfile.name === undefined) {Toast.fail('请重新选择需要上传的图片')return 'error'}// 提交上传图片的路径const forms = new FormData()forms.append('file', testfile) // 获取上传图片信息const result = await uploadimage(forms)console.log(result)if (result.status === 200) {console.log('上传图片成功')// 增加禁用button按钮的禁止点击事件,防止多次点击,多次提交数据this.$refs.button.setAttribute('disabled', 'disabled')} else {alert('上传图片失败')}} else {// alert('取消上传图片')setTimeout(done, 500)}}Dialog.confirm({title: '上传图片',message: '确定要上传图片吗?',beforeClose})},}
}

vue上传图片,并回显图片相关推荐

  1. Simditor 上传图片回显图片src base64 换成 图片链接

    Simditor 是一款简介好用的富文本插件 使用过程中发现 添加图片后,后台报错说字段太长,无法存入内容 原因是:Simditor 没有找到上传图片后回显的图片地址,直接获取图片的源文件转成base ...

  2. 【java】批量上传图片并回显功能

    一.前言 在电商的网站中,图片上传功能必不可少,小编在最近的项目中就有遇到了一个批量上传图片并且要回显的功能.可以说这是一个很常见的功能了,已经烂大街了,但是小编还是要认真的分析一下,以便日后用到. ...

  3. java上传图片回显_【java】批量上传图片并回显功能

    一.前言 在电商的网站中,图片上传功能必不可少,小编在最近的项目中就有遇到了一个批量上传图片并且要回显的功能.可以说这是一个很常见的功能了,已经烂大街了,但是小编还是要认真的分析一下,以便日后用到. ...

  4. HTML上传图片的回显

    document.getElementById("showImg").src = window.URL.createObjectURL(personsFile.files[0]); ...

  5. java spring 上传图片,springboot 上传图片并回显

    之前也有做过上传图片的功能,不过是用在ssm的项目中,也有很多的不完美. 这次用的springboot,基本上对上传图片又有了一定的认识,想再这里记录一下./** * 上传图片 * * @return ...

  6. springboot 上传图片并回显

    之前也有做过上传图片的功能,不过是用在ssm的项目中,也有很多的不完美. 这次用的springboot,基本上对上传图片又有了一定的认识,想再这里记录一下. /*** 上传图片** @return*/ ...

  7. 使用Dropzone上传图片及回显示例

    一.图片上传所涉及到的问题 1.HTML页面中引入这么一段代码 <div class="row"><div class="col-md-12" ...

  8. vue页面回显数据_解决vue表单回显数据无法修改的问题

    前言:今天在做修改操作的时候遇到了一个问题,数据回显到修改表单之后,发现无法输入,也不能实现修改 项目环境:springboot+vue前后端分离 问题:修改操作数据回显无法输入值 一.问题截图 二. ...

  9. el-upload编辑时回显图片

    在使用el-upload上传时,传给后端得是一个file文件流,而编辑回显的时候后端返回的是一个图片地址,这个时候就需要将url赋值到fileList里面 <el-form-item label ...

最新文章

  1. 【连载】优秀程序员的 45 个习惯之习惯33
  2. angular1x初始与架构演进(一)
  3. android 实现模拟加载中的程序
  4. Fiori应用deploy到云上后在Chrome开发者工具里Source标签页的外观
  5. JavaScript四则运算的一些特殊情况
  6. oracle PL/SL编程基础
  7. 人工智能的主要研究领域
  8. win10 mysql 卸载不干净,安装提示,The service already exists
  9. Openwrt中安装njit-client(njit8021xclient)及使用方法
  10. python公众号文章阅读量_怎么判断一篇微信公众号文章阅读量是不是刷上来的?...
  11. 于的繁体字有几种写法_于的繁体字是什么
  12. 关闭word后自动打开新的文档
  13. 新手小白怎样才能画好女生身体?画好女生身体有哪些技巧?
  14. Golang pprof简介
  15. 2022年网络搭建与应用——国赛FTP搭建 (解题步骤答案)
  16. 贪嗔痴慢疑 什么是绮语、两舌、恶口?
  17. 快捷录播服务器怎么显示时间,CREATOR快捷录播系统
  18. Symetric NAT和Restricted Cone NAT
  19. ipx/spx协议与tcp/ip协议
  20. 实验室要对哪些内容进行质量控制?【MD技术人】

热门文章

  1. Linux网络编程3——多进/线程并发服务器
  2. 使用QSettings保存和读取自定义数据类型
  3. php 菜单目录树,css实现的目录树型导航菜单
  4. 预训练模型-代码补全(二):Copilot(GitHub)
  5. 在Eclipse中反编译Class文件完全详解
  6. win7如何在登陆界面隐藏一个账户
  7. 从app跳转到手机设置(代码)
  8. Shell获取某个文件夹下的所有文件名(含文件夹)
  9. Android录制视频-nv21转nv12姿势(libyuv使用)
  10. 安装 ubuntu 系统各分区参考大小