关于uniapp绘制uqrcode的问题

存在的问题:
uniapp绘制的uqrcode,在开发工具可以正常展示,真机不显示

解决方案一:
uqrcode生成的二维码地址是base64格式,直接绘制真机不展示

function drawQRcode(url) { // url为要绘制二维码的链接
	const ctx = uni.createCanvasContext('myCanvas')
	let params = url // 二维码参数
	var imgData = qrcode.drawImg(params, {
		typeNumber: 4, // 密度
		errorCorrectLevel: 'Q', // 纠错等级
		size: 175, // 白色边框
	})
	// 先写入临时文件
	let fs = uni.getFileSystemManager()
	let filePath = wx.env.USER_DATA_PATH + '/code' + new Date().getTime() + '.png'
	fs.writeFile({
		filePath,
		data: imgData.slice(22),
		encoding: 'base64',
		success: res => {
			// 获取图片信息
			uni.getImageInfo({
				src: filePath,
				success: img => {
					// 使用canvas绘制
					drawCodeImg(img.path)
				}
			})
		}
	})
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值