当前位置: 首页 > ops >正文

微信小程序生成小程序码缓存删除

.TS

const fsm = uni.getFileSystemManager()
/**
* 将 base64 转换为本地图片路径
* @param base64data base64 数据
*/
export const writeFile = (base64data: string) => new Promise((resolve) => {const FILE_BASE_NAME = Date.parse(new Date().toString())const result = /data:image\/(\w+);base64,(.*)/.exec(base64data)if (!result || result.length < 3) {resolve('')return}const [, format, bodyData] = resultconst filePath = `${wx.env.USER_DATA_PATH}/poster/${FILE_BASE_NAME}.${format}`const buffer = uni.base64ToArrayBuffer(bodyData)fsm.writeFile({filePath,data: buffer,encoding: 'binary',success() {resolve(filePath)},fail() {resolve('')},})
})
export const readFile = (base64data: string) => new Promise((resolve) => {fsm.access({path: `${wx.env.USER_DATA_PATH}/poster`,success() {writeFile(base64data).then((filePath) => {resolve(filePath)})},fail() {fsm.mkdir({dirPath: `${wx.env.USER_DATA_PATH}/poster`,success() {readFile(base64data).then((res) => {resolve(res)})},})},})
})
/*** 删除目录*/
export const delFile = () => new Promise((resolve) => {fsm.rmdir({dirPath: `${wx.env.USER_DATA_PATH}/poster`,recursive: true,success() {resolve(true)},})
})

.JS

//引入TS方法
import { readFile, delFile } from '@/static/utils/poster'//这是删除防止内存超出
delFile().then(() => {console.log('删除成功')
})// 获取小程序码接口
export const getQrCode = async (path:string) => {const res = await http.get('接口地址', {header: { 'content-type': 'application/x-www-form-urlencoded' },responseType: 'arraybuffer',params: { path },})return res.data
}//获取小程序码
const rect = await getQrCode(path)
//转成本地图片路径
readFile(`data:image/jpeg;base64,${uni.arrayBufferToBase64(rect)}`).then((res) => {console.log('路径',res)
})

遇到问题可以看我主页加我Q,很少看博客,对你有帮助别忘记点赞收藏。

http://www.xdnf.cn/news/13831.html

相关文章:

  • 程序是怎么跑起来的第三章
  • 产品成本分析怎么做?从0到1搭建全生命周期分析框架!
  • 基于 Transformer RoBERTa的情感分类任务实践总结之四——PGM、EMA
  • 操作系统导论 第42章 崩溃一致性:FSCK 和日志
  • TEXT2SQL-vanna多表关联的实验
  • 13.安卓逆向2-frida hook技术-HookJava构造方法
  • 动态规划优雅计算比特位数:从0到n的二进制中1的个数
  • FastJSON等工具序列化特殊字符时会加转义字符\
  • 深度学习-163-MCP技术之使用Cherry Studio调用本地自定义mcp-server
  • 门岗来访访客登记二维码制作,打印机打印粘贴轻松实现。
  • 107.添加附件上传取消附件的功能
  • 06_项目集成 Spring Actuator 并实现可视化页面
  • 基于 8.6 万蛋白质结构数据,融合量子力学计算的机器学习方法挖掘 69 个全新氮-氧-硫键
  • OrangePi 5 Max EMMC 系统烧录时下载成功,启动失败解决方案
  • 高开放性具身智能AIBOX平台—专为高校实验室与科研项目打造的边缘计算基座(让高校和科研院所聚焦核心算法)
  • 打卡第43天:Grad CAM与Hook函数
  • 【ffmpeg】windows端安装ffmpeg
  • ES集群的节点
  • 深度学习入门(4):resnet50
  • 今日行情明日机会——20250612
  • Python小酷库系列:Python中的JSON工具库(1)
  • 106.给AI回答添加点赞收藏功能
  • PCI总线概述
  • ubuntu22.04使用系统默认的中文输入法,打字只输入英文字符怎么操作才能打字中文
  • 模型合并(model merge)
  • 如何搭建独立站并使用Cloak斗篷技术
  • Intel J1900通讯管理机,支持8网8串,EFT过载保护
  • MTK APEX测光系统中各变量具体的计算方式探究
  • FastDFS 分布式存储系统深度解析与实践指南
  • FEMFAT许可有效期