vue图片上传并转化base64格式

这篇具有很好参考价值的文章主要介绍了vue图片上传并转化base64格式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

组建中有一个@change="xxx"方法,图片上传时会调用这个方法,在这个方法中可以拿到上传图片的一些数据,可以对图片数据进行处理

<a-upload-dragger :file-list="fileList" :remove="handleRemove" @change="handleChange"  >
  <p style="font-size:36px;margin-bottom:8px;">
    <a-icon :component="inBox" />
  </p>
  <div>
    <p class="ant-upload-hint" style="font-size:16px;color: rgba(0, 0, 0, 0.85)">点击或将文件拖拽到这里上传       </p>
    <p>一次只能上传一个文件</p>
  </div>
</a-upload-dragger>

handleChange ({ file, fileList, event }) {
   // 组件自己会多次调用这个方法,如果还加载中调用时,直接return
  if (file.status === 'uploading') {
    this.loading = true
    return
  }
  this.loading = true
  const reader = new FileReader()
  if (file?.originFileObj) {
    reader.readAsDataURL(file.originFileObj)
  } else {
     reader.readAsDataURL(file)
   }
   reader.addEventListener('load', () => {
    this.logUrl = reader.result
    const formData = new FormData()
    const data = this.logUrl.split('base64,')[1]
    formData.append('base64', data)
    formData.append('type', file.type.split('/')[1])
    axios({
      url: 'http://122.162.81.114:8080/upload-file-base64',
      method: 'post',
      data: formData
    }).then(res => {
      this.loading = false
      this.selectList = res.data
      this.listFor = Object.keys(res.data)
    })
  })

转化base64格式

const reader = new FileReader()
  // 因为这两个组件的fils文件不一样所有一个判断
  if (file?.originFileObj) {
    reader.readAsDataURL(file.originFileObj)
  } else {
    reader.readAsDataURL(file)
  }
  reader.addEventListener('load', () => {
    this.base64 = reader.result
  })

传入的文件格式
vue 上传图片转base64,Vue,vue.js,javascript,前端
FileReader接口提供了读取文件的方法和包含读取结果的事件模型。

readAsDataURL:这是例子程序中用到的方法,该方法将文件读取为一段以 data: 开头的字符串,这段字符串的实质就是 Data URL,Data URL是一种将小文件直接嵌入文档的方案。如果是图片就直接转化成base64格式了。

FileReader还有一个方法onload,加载完成是触发,完成之后就可以获取到base64格式的数据了。文章来源地址https://www.toymoban.com/news/detail-602019.html

到了这里,关于vue图片上传并转化base64格式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vue:处理base64格式文件pdf、图片预览

    解释一下这段代码的功能: ) preview(item) 是一个函数,接受一个参数 item ,其中包含了文件的相关信息。 )首先,通过条件语句 if (item.type == \\\'pdf\\\') 检查文件类型是否为 \\\'pdf\\\'。 )如果文件类型是 \\\'pdf\\\',则执行以下操作: 使用 webAPI.server.get() 方法发送一个请求,请求的URL是通

    2024年01月18日
    浏览(30)
  • 【vue】 Tinymce 富文本编辑器 不想让上传的图片转换成base64,而是链接

    前言:最近项目上需要使用富文本编辑器,觉得tinymce很不错就用了,具体怎么在项目中使用参考 【vue】 vue2 中使用 Tinymce 富文本编辑器 【vue】 Tinymce 数据 回显问题 | 第一次正常回显后面,显示空白bug不能编辑 这两天又遇到了新的问题,图片上传后是看地址栏发现是base64的

    2024年02月14日
    浏览(37)
  • uni-app 调用相机或相册图片并转为base64格式上传图片

    1、调用相机或相册上传图片 2、图片文件转base64 (1)下载插件 (2)页面引入插件 3、image-tools/index.js源码

    2024年02月11日
    浏览(37)
  • 【js】js前端技巧之图片格式转换(File、Blob、base64):

    一、类型简介 BLOB(binary large object) : 二进制大对象,是一个可以存储二进制文件的容器。 在计算机中,BLOB常常是数据库中用来存储二进制文件的字段类型。 属性名称 读/写 描述 size 只读 Blob 对象中所包含数据的大小(字节)。 type 只读 一个字符串,表明该Blob对象所包含数据

    2024年02月07日
    浏览(38)
  • uniapp+vue3+vant-weapp运行到微信小程序中绘制海报,将画布中绘制base64格式的图片以及长按进行图片的分享和下载

    对于uniapp绘制海报,遇到的难点就是将bas64格式的图片绘制上去,试了很多方式,终于找到了不错的方法, 先将其下载到本地,再进行绘制,以下就是 完整的代码 海报的内容可以根据自己的需求自行更改 ## 下面有一个测试base64格式的图片,可用替换成自己的实际路径 ## 长按

    2024年02月21日
    浏览(86)
  • Java中实现图片和Base64的互相转化

    公司项目中用到了实名认证此,采用的第三方平台。后端中用到的单项功能为身份证信息人像对比功能,在写demo的过程中发现,它们所要求的图片信息为base64编码格式。

    2024年02月14日
    浏览(30)
  • vue+element ui完成头像上传功能(文件转base64)以及自定义布局。

    1、自定义布局       查阅element ui的头像上传功能,发现是点击头像位置才可以上传,那我们可不可以点击头像外部的按钮来上传头像呢? element ui效果图 :                                                    目标效果 :                            在实现

    2024年01月18日
    浏览(34)
  • 【base64】JavaScript&uniapp 将图片转为base64并展示

    Base64是一种用于编码二进制数据的方法,它将二进制数据转换为文本字符串。它的主要目的是在网络传输或存储过程中,通过将二进制数据转换为可打印字符的形式进行传输  图片大小从1.36MB到169kb 上面的代码中,toDataURL产生的是图片的base64编码,Base64编码必须是完整且正确

    2024年02月11日
    浏览(33)
  • Vue中的加密方式(js-base64、crypto-js、jsencrypt、bcryptjs)

    1.安装js-base64库  2. 在Vue组件中引入js-base64库 3.使用js-base64库进行加密 4.Vue中其他加密方式  1.crypto-js 2.jsencrypt 3.bcryptjs 使用 Base64.encode() 方法对字符串进行加密,并使用 Base64.decode() 方法对加密后的字符串进行解密。您可以根据需要使用这些方法来加密和解密字符串。请注意

    2024年02月08日
    浏览(24)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包