接上篇,少了一个方法的源代码。

先上代码:

ploadFilePromiseSync = (url) => {

return new Promise((resolve, reject) => {

// #ifdef MP-WEIXIN

uni.getFileSystemManager().readFile({

filePath: url,

encoding: 'base64',

success: res => {

let base64 = 'data:image/jpeg;base64,' + res.data

resolve(base64)

},

fail: (e) => {

reject("图片转换失败")

}

});

// #endif

// #ifdef H5

uni.request({

url: url,

method: 'GET',

responseType: 'arraybuffer',

success: ress => {

let base64 = uni.arrayBufferToBase64(ress.data)

base64 = 'data:image/jpeg;base64,' + base64

resolve(base64)

},

fail: (e) => {

reject("图片转换失败")

}

});

// #endif

// #ifdef APP-PLUS

plus.io.resolveLocalFileSystemURL(url, (entry) => {

entry.file((file) => {

let fileReader = new plus.io.FileReader();

fileReader.onloadend = (evt) => {

const base64 = evt.target.result.substr(22)

resolve(base64)

};

fileReader.readAsDataURL(file)

});

}, (e) => {

reject("Resolve file URL failed: " + e.message)

});

// #endif

});

}

只需将本地图片的路径传过去即可:

使用:

let img_base64 = await ploadFilePromiseSync(event.file.url)

这篇文章就到这里啦!如果你对文章内容有疑问或想要深入讨论,欢迎在评论区留言,我会尽力回答。同时,如果你觉得这篇文章对你有帮助,不妨点个赞并分享给其他同学,让更多人受益。

想要了解更多相关知识,可以查看我以往的文章,其中有许多精彩内容。记得关注我,获取及时更新,我们可以一起学习、讨论技术,共同进步。

感谢你的阅读与支持,期待在未来的文章中与你再次相遇!

uniapp同步将本地图片转换为base64,支持微信、H5、APP的更多相关文章

  1. js小工具---本地图片转换为base64编码数据

    今天用jmeter对图片对比进行性能测试,post请求为json请求,图片为Base64编码后的图片数据.所以需要将一张本地图片生成base64编码,找到一个js小工具,记录在这儿便于以后复用. 效果 ...

  2. 将图片转换为base64 格式

    1.页面上的图片,转换成base64格式,可以通过canvas 的 toDataURL 例子:给定图片的url 将图片转换为base64 var imageSrc = "../images/ ...

  3. js 图片转换为base64

    <input id="file" type="file"> <img id="img" style="max-h ...

  4. JAVA 将图片转换为Base64编码

    这里使用的jar包是commons-codec-1.10.jar; 示例代码 import java.io.FileInputStream; import java.io.FileOutputStre ...

  5. C# 图片转换为base64

    WebRequest webRequest = WebRequest.Create("验证码url"); WebResponse webResponse = webRequest. ...

  6. 【PHP】图片转换为base64,经过post传输后‘+’会变成 ‘空格’

    图片转换为base64,经过post传输后‘+’会变成 ‘空格’, 需要用PHP 处理一下 $str= $_POST['img_data']; $str= str_replace(' ','+',$s ...

  7. Slog71_选取、上传和显示本地图片GET !(微信小程序之云开发-全栈时代3)

    ArthurSlog SLog-71 Year·1 Guangzhou·China Sep 12th 2018 ArthurSlog Page GitHub NPM Package Page 掘金主页 ...

  8. 图片上传-本地图片转base64+ie8支持+本地预览支持

    最近项目由于flash同学没在了,图片上传只能前端重新做,后台希望用base64数据上传,复用之前接口 问题来了, 1.ie8 不支持canvas转base64 2.本地预览 base64数据,ie8 ...

  9. 本地图片转base64编码

    通常获取图片的base64编码都是通过input的上传file属性获取转化,但是有时候需要的是本地图片不经过上传操作,直接拿本地图片转成base64编码就不行了,input上传操作需要人为操作一下,没 ...

  10. C# Base64字符串转换成图片及图片转换为Base64

    最近有朋友经常会问我一些问题,例如,如何把一个字符串转换成base64字符串,如何把一个二进制文件转换成Base64文件,以及如何转换回原有的文件,在此我把方法写一下   字符串与Base64相互转换 ...

随机推荐

  1. CMake出错的处理

    在windows上使用cmake来c++的程序,遇到一个问题 问题排查 试过在电脑上单独使用gcc是可以编译成功的,那么就可能是IDE集成的问题了 IDE的编译工具链从mingw换成vs,编译通过 让 ...

  2. 服务器重装ip未更改,ssh连不上(WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED)

    服务器重装ip未更改,ssh连不上 前言 原因 解决方法 服务器重装ip未更改,ssh连不上 前言 重装了虚拟机,ip还保留了,但是发现连不上了 @@@@@@@@@@@@@@@@@@@@@@@@@@@ ...

  3. C++ Qt开发:TableWidget表格组件

    Qt 是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍TableWi ...

  4. Python 使用Scapy构造特殊数据包

    Scapy是一款Python库,可用于构建.发送.接收和解析网络数据包.除了实现端口扫描外,它还可以用于实现各种网络安全工具,例如SynFlood攻击,Sockstress攻击,DNS查询攻击,ARP ...

  5. php批量更新多条数据

    /** * @param $table 表名 * @param array $multipleData 拼接的批量更新的数组格式: * $students = [['id' => 1, 'cit ...

  6. MarkDown书写语法(常用格式)

    实际上每个 Markdown 应用程序都实现了稍有不同的 Markdown 语法,熟悉MarkDown书写语法常用格式,满足日常文字编辑需求 1.标题 请在单词或短语前面添加井号 (#) .# 的数量 ...

  7. Java开发学习(三十八)----SpringBoot整合junit

    先来回顾下 Spring 整合 junit @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(classes = Spring ...

  8. Matrix【未完成】

    Matrix The fitrst thing we do,let's kill all the language lawyers. -- Henry VI, Part II The "pr ...

  9. ClickHouse-tgz安装步骤

    一.什么是clickhouse ClickHouse是开源的列式存储数据库(DBMS),主要用于在线处理查询(OLAP),能够使用SQL查询实时生成数据分析报告. 下面介绍下安装clickhouse. ...

  10. [JVM] JVM的类加载机制

    JVM的类加载 首先我们来看下Java虚拟机的类加载过程: 如上图. 当JVM需要用到某个类的时候,虚拟机会加载它的 .class 文件.加载了相关的字节码信息之后,会常见对应的 Class 对象,这 ...