返回顶部
首页 > 资讯 > 精选 >js怎么利用FileReader实现图片转base64格式并上传预览头像
  • 582
分享到

js怎么利用FileReader实现图片转base64格式并上传预览头像

2023-06-30 15:06:43 582人浏览 八月长安
摘要

今天小编给大家分享一下js怎么利用FileReader实现图片转base64格式并上传预览头像的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一

今天小编给大家分享一下js怎么利用FileReader实现图片转base64格式并上传预览头像的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

    修改用户头像,一般都会需要把图片转成base64格式,所以我们需要学会怎么利用FileReader转换

    页面布局:

    <template>  <el-card class="box-card">    <div slot="header" class="clearfix">      <span>更换头像</span>    </div>    <div>      <!-- 图片,用来展示用户选择的头像 -->      <img :src="Avatar" alt=""   v-if="Avatar"/>      <img src="../../../assets/images/avatar.jpg" alt=""  v-else />      <!-- 按钮区域 -->      <div class="btn-box">        <input type="file"  ref="refIpt" @change="onIptChange">        <el-button type="primary" icon="el-icon-plus" @click="chooseImg">选择图片</el-button>        <el-button type="success" icon="el-icon-upload" :disabled="Avatar===''"  @click="upLoadAvatar">上传头像</el-button>      </div>    </div>  </el-card></template>

    思路分析:

    • 点击button按钮触发input的点击事件,所以需要给input设置ref拿到Dom

    • 给input设置change改变事件

      • 1设置一个变量接收转换的数据

      • 2拿到事件目标,里面有个方法e.target.files是个伪数组.通过e.target.files.length判断用户是否选择了图片

      • 3通过new FileReader拿到一个实例

      • 4通过 实例名.readAsDataURL 将图片转成base64格式

      • 5onload可以监听转换完成后/给声明变量赋值

    • 点击上传按钮发送axiOS/上传成功重新请求用户信息实现信息刷新

    代码:

    <script>export default {  name: 'UserAvatar',  data () {    return {      // 声明一个变量存储转好的base64进制      Avatar: ''    }  },  methods: {    // 点击button触发input点击事件    chooseImg () {      this.$refs.refIpt.click()    },    // input内容改变事件    // e拿到事件对象    onIptChange (e) {      // e.target.files是个伪数组/可以通过长度判断用户是否选择了图片      if (e.target.files.length === 0) {        // 点击了取消了,就恢复默认图片        this.Avatar = ''      } else {        // FileReader 浏览器提供的方法        const reader = new FileReader()        // reader里面有个方法readAsDataURL 可以将图片转base64进制        reader.readAsDataURL(e.target.files[0])        // onload可以监听转换完成后        reader.onload = () => {        // 给声明变量赋值          this.Avatar = reader.result        }      }    },    // 点击上传头像    async  upLoadAvatar () {      // 发送axios 上传      const { data: res } = await this.$Http.patch('/my/update/avatar', { avatar: this.Avatar })      // 判断业务状态码是否上传成功给出提示      if (res.code !== 0) return this.$message.error(res.message)      console.log(res)      this.$message.success(res.message)      // 上传成功发送重新发送axios获取最新用户信息      this.$store.dispatch('initUserInfo')    }  }}</script>

    以上就是“js怎么利用FileReader实现图片转base64格式并上传预览头像”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网精选频道。

    --结束END--

    本文标题: js怎么利用FileReader实现图片转base64格式并上传预览头像

    本文链接: https://lsjlt.com/news/329943.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    猜你喜欢
    • js利用FileReader实现图片转base64格式并上传预览头像
      目录页面布局:思路分析:代码:修改用户头像,一般都会需要把图片转成base64格式,所以我们需要学会怎么利用FileReader转换 页面布局: <template> ...
      99+
      2024-04-02
    • js怎么利用FileReader实现图片转base64格式并上传预览头像
      今天小编给大家分享一下js怎么利用FileReader实现图片转base64格式并上传预览头像的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一...
      99+
      2023-06-30
    • vue.js如何实现图片转Base64上传图片并预览
      这篇文章主要为大家展示了“vue.js如何实现图片转Base64上传图片并预览”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“vue.js如何实现图片转Base6...
      99+
      2024-04-02
    • php如何实现图片转base64格式并上传
      本文操作环境:windows10系统、php 7、thinkpad t480电脑。在实际开发项目的过程中处理图片上传是一定会遇到的,例如使用thinkphp的小伙伴一定很熟悉import("@.ORG.UploadFile&quo...
      99+
      2019-05-21
      php 图片 base64
    • jQuery如何实现点击头像上传并预览图片
      这篇文章主要为大家展示了“jQuery如何实现点击头像上传并预览图片”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“jQuery如何实现点击头像上传并预览图片”这...
      99+
      2024-04-02
    • 怎么用PHP+Ajax实现无刷新上传头像图片预览功能
      这篇文章主要讲解了“怎么用PHP+Ajax实现无刷新上传头像图片预览功能”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用PHP+Ajax实现无刷新上传头...
      99+
      2024-04-02
    • 怎么利用nodeJS+vue图片上传实现更新头像
      本篇内容主要讲解“怎么利用nodeJS+vue图片上传实现更新头像”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么利用nodeJS+vue图片上传实现更新头像”吧!思路:前端通过el-uplo...
      99+
      2023-06-30
    • 使用Ajax怎么上传图片并预览
      使用Ajax怎么上传图片并预览?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。最近在使用ThinkPHP5开发项目中客户有一个需求是在图片上传时附带预览功能。虽然...
      99+
      2023-06-08
    • html5怎么实现图片上传预览
      这篇文章主要介绍“html5怎么实现图片上传预览”,在日常操作中,相信很多人在html5怎么实现图片上传预览问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”html5怎么实现图...
      99+
      2024-04-02
    • Html5 中怎么利用FileReader实现即时上传图片功能
      Html5 中怎么利用FileReader实现即时上传图片功能,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。<!DOCT...
      99+
      2024-04-02
    • angularjs怎么实现多张图片上传并预览功能
      这篇文章主要介绍angularjs怎么实现多张图片上传并预览功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!具体内容如下directive.js    angu...
      99+
      2024-04-02
    • Html5怎么实现上传本地图片并预览功能
      小编给大家分享一下Html5怎么实现上传本地图片并预览功能,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!最近工作中需要H5上传显...
      99+
      2024-04-02
    • 如何利用原生JS实现图片预览加上传(前后端交互)
      目录前言效果大致如下前端代码后端代码总结前言 最近在写vue项目的时候发现了个Vant的一个upload的图片上传的组件,就好奇了一下下,于是萌生了一个自己手写一个图片上传的组件的想...
      99+
      2024-04-02
    • html5中怎么实现图片上传预览功能
      今天就跟大家聊聊有关html5中怎么实现图片上传预览功能,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。<!DOCTYPE html&...
      99+
      2024-04-02
    • 利用nodeJS+vue图片上传实现更新头像的过程
      目录思路:1、前端准备2、node后端服务总结思路: 前端通过el-upload将图片传给后端服务,后端通过formidable中间件解析图片,生成图片到静态资源文件夹下(方便前端直...
      99+
      2024-04-02
    • Vue和UpLoad怎么实现上传预览和删除图片
      这篇文章主要介绍“Vue和UpLoad怎么实现上传预览和删除图片”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Vue和UpLoad怎么实现上传预览和删除图片”文章能帮助大家解决问题。用vue+Ele...
      99+
      2023-06-29
    • jQuery插件ImgAreaSelect怎么实现头像上传预览和裁剪功能
      本文小编为大家详细介绍“jQuery插件ImgAreaSelect怎么实现头像上传预览和裁剪功能”,内容详细,步骤清晰,细节处理妥当,希望这篇“jQuery插件ImgAreaSelect怎么实现头像上传预览和裁剪功能”文章能帮助大家解决疑惑...
      99+
      2023-06-04
    • Nodejs中怎么实现图片上传和压缩预览功能
      这篇文章给大家介绍Nodejs中怎么实现图片上传和压缩预览功能,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。1、引入基本配置const Koa = req...
      99+
      2024-04-02
    • Android中怎么利用ViewPager实现图片滑动预览效果
      本篇文章给大家分享的是有关Android中怎么利用ViewPager实现图片滑动预览效果,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。xml代码:<xml ve...
      99+
      2023-05-30
      android viewpager
    • Electron怎么实现调用外接摄像头并拍照上传
      这篇文章主要介绍了Electron怎么实现调用外接摄像头并拍照上传的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Electron怎么实现调用外接摄像头并拍照上传文章都会有所收获,下面我们一起来看看吧。背景基于E...
      99+
      2023-07-05
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作