随笔 弹窗 二维码生成及图片下载

这篇博客介绍了如何在Vue项目中使用qrcode-vue模块生成二维码,并实现点击保存图片进行下载的功能。在methods中定义了savePic方法,通过canvas元素转换为PNG并触发下载。此外,还提到了数组去重的方法以及针对IE和MicrosoftEdge浏览器的兼容性处理。
摘要由CSDN通过智能技术生成

一、qrcode-vue模块

   该模块是用来动态生成二维码的vue模块插件,
   <qrcode-vue></qrcode-vue>的底层其实是一个<canvas></canvas>标签。
   要想使用qrcode.vue插件,需要用vue的脚手架安装这个插件安装指令npm install qrcode --save-dev,
   在这里我举一个例子。
   <el-col :span="6" class="item">
		<div class="code">
	<!--生成二维码-->
	   	  <qrcode-vue :value='shareUrl' :size='qrCodeSize' className='qrcode' id="picture" ref="code"></qrcode-vue>
	 	 </div>
	  <p class="">班级二维码</p>
	<!--保存图片按钮-->
	  <el-button round size="small" @click="savePic">保存图片</el-button>
	</el-col>

二·、如何点击保存图片进行下载

点击"保存图片"按钮在methods中写如下点击事件对应方法:

//保存图片
savePic(){
//找到canvas标签
let myCanvas = document.getElementById(‘picture’).getElementsByTagName(‘canvas’);
//创建一个a标签节点
let a = document.createElement(“a”)
//设置a标签的href属性(将canvas变成png图片)
a.href = myCanvas[0].toDataURL(‘image/png’).replace(‘image/png’, ‘image/octet-stream’)
//设置下载文件的名字
a.download = “班级二维码”
//点击
a.click()
//弹出提示
this.$message({message:‘亲,正在进行下载保存’,type:‘warning’})
},

还有一些随笔,
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

这里是下载图片功能
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
数组去重部分方法
ES6 let set = new Set( arr )
给对象去重 :
var arr2 = arr.filter((x, index,self)=>{
var arrids = [ ]
arr.forEach((item,i) => {
arrids.push(item.id)
})
return arrids.indexOf(x.id) === index
})
console.log(arr2);
下载二维码插件几种方式

第一种: yarn add vue-qrcode-directive
第二种: yarn add vue-qr

在main.js引入 use 一下

import qrcode from "vue-qrcode-directive"
import VueQr from 'vue-qr'  //引入VueQr
Vue.use(qrcode)
Vue.use(VueQr)

第一种使用

<div v-qr="options" v-if="options" id="picture"></div>
options: {
   
  text: `我是二维码的内容(I'm the content of the QR code.)'`,
  render: "canvas",
  width: 256,
  height: 
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值