二维码识别原理我们可以知道客户端是检测网页的img标签内进行长按操作时,会立刻截屏并且启动二维码识别算法
我曾尝试显示qrcode2生成的img标签,但是无效,所以只能将qrcode2生成的base64放在我自己的img里面
methods: {
qrcodeScan () {
shareCheck().then((result) => {
let res = result.data
if (res.code === 1) {
// eslint-disable-next-line no-new
new QRCode(this.$refs.qrcode, {
text: res.msg,
// width: 100,
// height: 100,
// colorDark : "#000000",
// colorLight : "#ffffff",
correctLevel: QRCode.CorrectLevel.H // 二维码容错级别 H M L
})
}
this.$nextTick(() => {
let myCanvas = document.getElementsByTagName('canvas')[0]
let img = this.CanvasToImage(myCanvas)
img.style.width = '100%'
img.style.height = '100%'
// console.log(img)
let box = document.getElementsByClassName('qrcode')[0]
box.append(img)
})
})
},
CanvasToImage (canvas) {
let image = new Image()
image.src = canvas.toDataURL('image/png')
return image
}
}
class="qrcode"是我们创造的img盒子