JavaScript原生将图片转成base64

1.写个html文件

html 复制代码
<!-- 产品照片 -->
<div class="mb-3">
<label for="cover" class="form-label">产品图片</label>
    <input
        type="file"
        class="form-control"
        id="coverfile"
    />
</div>

2.写个js文件

说明:

FileReader对象允许 Web 应用程序异步读取存储在用户计算机上的文件(或原始数据缓冲区)的内容,使用 File对象指定要读取的文件或数据。

javascript 复制代码
// 产品图片
let cover = "";
//获取coverfile节点
const coverfile=document.querySelector("#coverfile")

coverfile.onchange = function (e) {
  // 创建一个 FileReader 对象,用于读取文件内容。
  let reader = new FileReader();
  //   base64读取
  // 使用 readAsDataURL 方法读取用户选择的文件。e.target.files[0] 表示用户选择的第一个文件。
  reader.readAsDataURL(e.target.files[0]);
  //   加载完成
  // 当文件加载完成后,onload 事件会被触发,执行相应的回调函数。
  reader.onload = function (event) {
    // 表示读取到的所有文件内容,即文件的 base64 编码。
    cover = event.target.result;
  };
};
};

3.效果展示

相关推荐
梦曦i14 小时前
uni-router新推useUniEventChannel,彻底解决页面通信难题
前端·uni-app
柯克七七14 小时前
给老项目加了 TypeScript,本来只想自己爽,结果全公司代码审查标准被我抬高了
前端·vue.js·typescript
张元清14 小时前
React useObjectUrl Hook:预览文件与 Blob,不留内存泄漏(2026)
javascript·react.js
yuanlaile14 小时前
前端转 Flutter 自学完整规划,避开跨栈思维转换误区
前端·flutter·flutter跨平台开发
CN_HW14 小时前
Nginx 流量镜像配置文档-双轨国产化
服务器·前端·网络
姑苏倾城客14 小时前
Flutter中,html 与 dart 桥接沟通
javascript·flutter·html
JNX_SEMI14 小时前
ATR2652 GNSS双频LNA:0.75dB噪声系数与22dB高增益设计
前端·单片机·嵌入式硬件·物联网·硬件工程
拾年27514 小时前
Node.js 异步进化论:从 path 路径拼接到 fs 文件读取,我终于理解了回调地狱的救赎之路
前端·node.js
花颜yyds15 小时前
React Konva 开发基础速查手册
前端
小粉粉hhh15 小时前
Node.js(五)——编写接口
前端·javascript·node.js