在Vue中使用QRCode生成二维码 插件

方法

一、qrcode插件

1、安装依赖

npm install --save qrcode

2、引入

mian.js 复制代码
//Vue使用QRCode插件,生成二维码 
import QRCode from 'qrcode' 
Vue.prototype.$QRCode = QRCode

3、封装

vue 复制代码
<template>
  <div>
    <canvas id="canvas"></canvas>
  </div>
</template>
<script>
export default {
  name: "rechargeBox",
  data() {
    return {
    
    };
  },
  methods: {
    //生产二维码
    useqrcode(url) {
      var canvas = document.getElementById("canvas");
     // this.$QRCode.toCanvas(canvas, url, function (error) {
     //   if (error) console.error(error)
     // })
      this.$QRCode.toCanvas(canvas, url, { width: 158 }); //直接修改二维码尺寸
    },
  },
  mounted() {
    let url = "https://www.baidu.com/";
    this.useqrcode(url);
  },
};
</script>
<style lang="scss" scoped>

</style>

4、页面调用

vue 复制代码
</template>
 </div>
	<div class="QR">
      <QRcode></QRcode>
       <!--二维码-->
     </div>
 </div>
</template>


<script>
import QRcode from "./QRcode.vue";//修改成自己的路径
export default {
  components: {
    QRcode,
   },
 } 
</script>

二、qrcodejs2库

1、安装依赖

npm i qrcodejs2 -S

2、页面引入

js 复制代码
import QRCode from 'qrcodejs2'

3、封装

vue 复制代码
<template>
<!--二维码位置-->
  <div id="qrcode"></div>
</template>
<script>
import QRCode from 'qrcodejs2'
export default {
  name: "rechargeBox",
  data() {
    return {
     
    };
  },
 methods: {
    qrcode () {
      let qrcode = new QRCode('qrcode', {
        width: 100,// 宽度
        height: 100, // 高度
        text: '56663159', // 二维码内容
        // render: 'canvas', // 设置渲染方式(有两种方式 table和canvas,默认是canvas)
        // background: '#f0f',
        // foreground: '#ff0',
      })
      console.log(qrcode)
    }
  },
  
mounted () {
    this.qrcode()

  },
};
</script>
<style lang="scss" scoped>

</style>

4、使用

vue 复制代码
</template>
 </div>
	<div class="QR">
      <QRcode></QRcode>
       <!--二维码-->
     </div>
 </div>
</template>


<script>
import QRcode from "./QRcode.vue";//修改成自己的路径
export default {
  components: {
    QRcode,
   },
 } 
</script>
相关推荐
广州华水科技1 分钟前
大坝变形监测的单北斗GNSS技术应用与发展分析
前端
Dontla5 分钟前
浏览器localStorage共享机制介绍(持久化客户端存储方案)本地存储冲突、iframe、XSS漏洞、命名空间隔离
前端·网络·xss
霍理迪21 分钟前
JS其他常用内置对象
开发语言·前端·javascript
tao35566723 分钟前
HTML-03-HTML 语义化标签
前端·html
小马_xiaoen26 分钟前
IndexedDB 从入门到实战:前端本地大容量存储解决方案。
前端
jiayong2330 分钟前
Vue2 与 Vue3 常见面试题精选 - 综合宝典
前端·vue.js·面试
We་ct37 分钟前
LeetCode 383. 赎金信:解题思路+代码解析+优化实战
前端·算法·leetcode·typescript
东东5161 小时前
OA自动化居家办公管理系统 ssm+vue
java·前端·vue.js·后端·毕业设计·毕设
周某人姓周1 小时前
DOM型XSS案例
前端·安全·web安全·网络安全·xss
程序员鱼皮1 小时前
前特斯拉 AI 总监:AI 编程最大的谎言,是 “提效”
前端·后端·ai·程序员·开发