vue生成二维码并下载二维码

首先安装一下面这个插件

 cnpm install vue-qr -S

接下来在需要生产并下载二维码的页面引入

import VueQr from 'vue-qr'

并在components中注册为组件

components: {
    VueQr // 二维码组件
},
data() {
	return {
	        config: { // 二维码配置
                logo: '',
                value: ''
            }
	}
},
methods: {
	// 点击触发下载二维码
	downQRImg (data, type) {
	    this.config = {
	        logo: '二维码中心logo',
	        value: '二维码内容'
	    }
	    let timer = setInterval(() => {	// 做一个定时器防止二维码未生成时候就下载而获取不到二维码地址
	        if (this.$refs.Qrcode.$el.src) {
	            const iconUrl = this.$refs.Qrcode.$el.src	// 二维码地址
	            let a = document.createElement('a')
	            let event = new MouseEvent('click')
	            a.download = data.TenantName	// 二维码名称
	            a.href = iconUrl
	            a.dispatchEvent(event)
	            clearInterval(timer)
	            this.$message.success('二维码已下载')
	            this.config = {
	                logo: '',
	                value: ''
	            }
	        }
	    }, 100)
	},
}

在html代码里面加入以下代码

<vue-qr
    id="qrcodeimg"
    ref="Qrcode"
    style="display:none"
    :logo-src="config.logo"
    :text="config.value"
    :size="200"
    :margin="0"
/>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梦一场江南烟雨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值