js 生成二维码(qrcodejs2-fix)
qrcodejs2 插件生成二维码
v3+vite+ts 使用qrcodejs2插件 有个报错的
-
问题 Cannot read properties of undefined (reading ‘_android’)
vue3 + ts
使用qrcodejs2
插件生成二维码报错Cannot read properties of undefined (reading ‘_android’)
-
解决上述报错的办法:替换
qrcodejs2
使用qrcodejs2-fix
1、卸载:npm uninstall qrcodejs2
2、安装:npm i qrcodejs2-fix(使用时候,与qrcodejs2 用法一致)
如下完整示例
`首先你需要有一个div`,如下:
<div style="padding: 10px 10px 0 60px" ref="qrCodeUrlRef"></div>
我用的这个版本【"qrcodejs2-fix": "^0.0.1",】
import QRCode from 'qrcodejs2-fix'
`生成二维码`
let qrCodeUrlRef = ref()
const creatQrCode = () => {
let qrcode = new QRCode(qrCodeUrlRef.value, {
text: 'http://wwww.hahaha.net.cn/?userId=123', // 需要转换为二维码的内容
width: 100,
height: 100,
colorDark: '#000000',
colorLight: '#ffffff',
correctLevel: QRCode.CorrectLevel.H, // 写死的
})
}
`解决:首次打开界面,切换到别的界面后,二维码没生成的问题`
let theUrl = ref('')
theUrl.value = window.location.href
watch(
theUrl,
(newVal, oldVal) => {
console.log('newVal=', newVal)
setTimeout(() => {
creatQrCode()
}, 500)
},
{ immediate: true },
)
onMounted(() => {
// 生成二维码
creatQrCode()
})