vue项目生成二维码(并避免重复生成)

一、需求,按连接(带参数)生成二维码

二、步骤

1、先安装插件

javascript 复制代码
	npm install qrcodejs2 --save-dev

2、在需要用到二维码的页面引入

javascript 复制代码
import QRCode from 'qrcodejs2';

3、主要代码

javascript 复制代码
<div id="qrCode2" ref="qrCodeDiv" class="ma"></div>
javascript 复制代码
       openMa() {
				// 每次生成前清空二维码,即移除已生成的图像和canvas,避免重复
				const cleardom = document.querySelectorAll('#qrCode2 canvas,#qrCode2 img')
				Array.from(cleardom).forEach((item) => {
					item.remove()
				})
				//下面是生成二维码的链接
				var urls = 'url?type=1' + '&id=' + this.myclaim.id;
				console.log('url+++', urls);
				//如果下面的settimeout不行,就用下面这一段
				// this.$nextTick(function() {
				// 	new QRCode('qrCode2', {
				// 		text: urls,
				// 		width: 128,
				// 		height: 128,
				// 		colorDark: "#333333", //二维码颜色
				// 		colorLight: "#ffffff", //二维码背景色
				// 		correctLevel: QRCode.CorrectLevel.L //容错率,L/M/H
				// 	})
				// })
				setTimeout(() => {
					let qrcode = new QRCode("qrCode2", {
						width: 180, // 二维码宽度,单位像素
						height: 180, // 二维码高度,单位像素
						colorDark: "#000000",
						colorLight: "#ffffff",
						correctLevel: 3,// 重点是这个值解
						text: urls // 生成二维码的链接
					});
				}, 200)


			},
相关推荐
程序员小寒8 分钟前
前端高频面试题之CSS篇(一)
前端·css·面试·css3
颜酱24 分钟前
Monorepo 架构以及工具选型、搭建
前端·javascript·node.js
oden28 分钟前
ChatGPT不推荐你?7个GEO技巧让AI主动引用你的内容
前端
X***48961 小时前
JavaScript在Node.js中的Nx
javascript·node.js·vim
o***Z4481 小时前
JavaScript在Node.js中的内存管理
开发语言·javascript·node.js
李游Leo1 小时前
前端安全攻防指南:XSS / CSRF / 点击劫持与常见防护实践(含真实案例拆解)
前端·安全·xss
我命由我123452 小时前
微信开发者工具 - 模拟器分离窗口与关闭分离窗口
前端·javascript·学习·微信小程序·前端框架·html·js
E***q5392 小时前
Vue增强现实开发
前端·vue.js·ar
S***42802 小时前
JavaScript在Web中的Angular
前端·javascript·angular.js
4***14902 小时前
Vue代码规范详解
javascript·vue.js·代码规范