uniapp二维码生成

uniapp二维码生成

参考文档

【博主:ChoneyLove】uniapp中生成二维码及解决微信小程序端问题总结

依赖引入

shell 复制代码
npm i uqrcodejs

代码

html部分

html 复制代码
<canvas type="2d" id="qrCode" canvas-id="qrCode" style="width: 72rpx; height: 72rpx;"></canvas>

生成代码(vue3 hook)

javascript 复制代码
// 生成二维码
import UQRCode from 'uqrcodejs';
import { onShow } from "@dcloudio/uni-app"
import { nextTick } from 'vue';

export default function useCreateQRCode(type : number = 0, targetName : string = 'qrCode', size : number = 72) {
	// 生成二维码
	const createQRCode = async () => {
		let url = `...`;
		console.log(url);
		let qr = new UQRCode();
		qr.data = url
		qr.size = uni.upx2px(size); // 注意这里大小要跟画布大小一致,否则二维码可能超出画布
		qr.make();
		const canvasContext = uni.createCanvasContext(targetName);
		qr.canvasContext = canvasContext;
		qr.drawCanvas();
	}

	onShow(() => {
		nextTick(() => {
			createQRCode();
		})
	})
	return {}
}

使用

html 复制代码
<template>
	<view>
		<!-- ... -->
		<canvas type="2d" id="qrCode" canvas-id="qrCode" style="width: 72rpx; height: 72rpx;"></canvas>
	</view>
</template>

<script setup lang="ts">
	import useCreateQRCode from "@/hooks/createQRCode";
	useCreateQRCode();
</script>
相关推荐
他叫自己MR张1 天前
uni-app 应用启动报uni-ad业务状态异常(-9002)【已解决】
uni-app
2501_915909061 天前
iOS应用性能监控 Instruments工具与崩溃日志分析完整指南
android·ios·小程序·https·uni-app·iphone·webview
2501_915918412 天前
详解iOS App上架至App Store的全流程步骤与注意事项
android·macos·ios·小程序·uni-app·cocoa·iphone
anyup2 天前
终于在今天入选了 Gitee GVP,这真值得庆祝~
前端·uni-app·开源
虚惊一场2 天前
撤销为什么只需要 pop:用事件重放实现离线台球计分
微信小程序·uni-app
虚惊一场2 天前
从一个小程序到一座工具箱:uni-app 分包与 Flask 微服务实践
微信小程序·uni-app
Cry丶2 天前
【已解决】adb devices 能识别手机,但 HBuilderX 搜索不到设备的避坑指南
android·adb·uni-app·hbuilderx·真机调试
清风programmer3 天前
H5与小程序通信
前端·vue.js·uni-app
2501_915918414 天前
深入对比iOS开发中常用性能监控工具的底层原理与优缺点分析
android·ios·小程序·https·uni-app·iphone·webview
AI多Agent协作实战派5 天前
AI多Agent协作系统实战(二十三):Agent读HEARTBEAT.md不读AGENTS.md——openclaw的文件加载之谜
前端·数据库·人工智能·uni-app