vue看不了二维码如何解决

寻技术 VUE 2023年10月04日 80

这篇文章主要介绍了vue看不了二维码如何解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇vue看不了二维码如何解决文章都会有所收获,下面我们一起来看看吧。

一、问题现象

通过Vue.js开发的页面,使用微信或其他APP内置浏览器,打开页面后,无法正常识别并扫描二维码,或者说二维码无法正常显示。

二、问题分析

1.浏览器限制

首先,我们需要明确一点,二维码可以被浏览器正确地解析,但是因为浏览器默认限制了访问本地文件,所以在Vue.js开发环境下,我们会看到二维码显示不出来的情况。

2.二维码图片转成base64

解决方案是将二维码图片转成base64,作为一个dataURL,然后将其直接渲染到HTML中。

三、问题解决

1.通过URL引入图片

<img :src="qrcodeUrl">

在Vue.js项目中,使用URL引入图片的方法如上。

2.通过dataURL引入图片

在项目中引用Base64格式的图片,可以使用

background-image
引入。
<div :style="{ backgroundImage: 'url(' + qrcodeBase64 + ')'}"></div>

需要使用

canvas
将二维码转换成DataURL。
import QRCode from 'qrcode';

// 获取二维码的DataURL
QRCode.toDataURL(url, (err, dataUrl) => {
  if(!err) {
    this.qrcodeBase64 = dataUrl;
  }
})

3.将Base64编码后的图片输出到HTML中

<img :src="`data:image/jpeg;base64,${qrcode}`" />
关闭

用微信“扫一扫”