效果:点击二维码查看按钮,可以根据某列中的数据,生成二维码。
拿手机扫描该二维码后,可以显示出某列中的数据。
![](https://i-blog.csdnimg.cn/blog_migrate/e5fa35a7942d237562d06d84d96bd97b.png)
步骤如下:
安装qrCode
npm install qrcodejs2 --save
在vue界面上引入:
import QRCode from "qrcodejs2"
在<template>里编辑二维码弹框对话框、二维码查看按钮代码
<!--二维码弹框对话框-->
<el-dialog title="物资二维码" :visible.sync="isShowCard" width="400px" center>
<div style="display:flex;justify-content: center;">
<div id="qrCode" ref="qrCodeDiv"></div>
</div>
</el-dialog>
<el-button
size="mini"
type="text"
icon="el-icon-search"
@click="handleshow(scope.row)"
>二维码查看</el-button>
4.在<script>的data中定义isShowCard,用于弹框显示与否
![](https://i-blog.csdnimg.cn/blog_migrate/eaea04eb2a428a9309601b25f820edca.png)
5.在<script>的method中编写handleshow方法
/**handleCreateCode二维码生产方法*/
handleshow(row){
this.isShowCard=true;
this.createQRCode(row.goodCode)//根据row中的goodCode数据生成二维码
},
//生成二维码
createQRCode(content){
debugger
let _this =this;
this.$nextTick(() => {
let qr=_this.$refs.qrCodeDiv;
qr.innerHTML='';
new QRCode(qr, {
text: content,
//text为转换为二维码的文本,可以是所有东西:图片、文本、电话、链接等等
width: 200, //生成二维码的宽度
height: 200, //生成二维码的高度
colorDark: "#333333", // 二维码颜色
colorLight: "#F8F8FF" //二维码背景颜色
});
});
},