uniapp同步将本地图片转换为base64,支持微信、H5、APP

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

先上代码:

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)

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

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

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

相关推荐
wechatbot8889 小时前
企业微信API开发:登录-联系人查询-消息发送完整开发流程分享
汇编·微信·自动化·企业微信·ai编程·rpa
结网的兔子16 小时前
【前端开发】Web端迁移至 uni-app 及鸿蒙扩展方案对比
前端·uni-app·harmonyos
2501_9159090616 小时前
iOS 应用反调试技详解术 检测调试器的原理与防护实践
android·ios·小程序·https·uni-app·iphone·webview
AI多Agent协作实战派19 小时前
AI多Agent协作系统实战(二十八):顶栏统一战争——从1个页面异常到31个页面全量对齐
数据库·人工智能·uni-app
00后程序员张19 小时前
iOS加固技术路线全面解析:Bitcode模式、源码模式与汇编模式对比及爱加密优势
android·汇编·ios·小程序·uni-app·cocoa·iphone
2501_916008891 天前
iOS IPA文件反编译与打包操作方法,拆包分析防护和加固打包
android·macos·ios·小程序·uni-app·cocoa·iphone
name好难取诶2 天前
通过对云基座和离线基座的对比,帮助开发者理解如何在不同场景下选择合适的打包方案。 什么是“基座” 在 UniApp 中,基座(也称“ ...
开发语言·uni-app·php
2501_915921432 天前
iOS手游安全反外挂解决方案:基于Xcode的加固混淆特色详解
android·安全·ios·小程序·uni-app·iphone·xcode
2501_916007472 天前
iOS App分发教程 App Store、TestFlight 与 Ad Hoc 的配置与上传方法
android·ios·小程序·https·uni-app·iphone·webview
qq_316837752 天前
uniapp 打包APP 使用 Galacean Effects 的特效
uni-app