vue项目中使用qrcodesjs2生成二维码简单示例

 更新时间:2023年05月25日 14:56:48   作者:无知的小菜鸡  
最近项目中需生成二维码,发现了很好用的插件qrcodesjs2,所以下面这篇文章主要给大家介绍了关于vue项目中使用qrcodesjs2生成二维码的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

最近写项目遇到一个需求需要生成二维码,看了一下项目中生成二维码使用的都是qrcodesjs2,而且操作比较简单。在这里简单记录一下

vue项目中使用qrcodesjs2生成二维码

安装

npm i qrcodejs2 -S

html

<!-- 放置二维码的容器,需要给一个ref -->
 <div v-for="(item,i) in qrcode" :key="i">
 	<div id="qrcode" :ref="qrcode[i]"></div>
 <div>

项目中需要打印多个二维码,而且这样更加通用无论打印单个还是多个都可以

js

// 生成二维码
   printTwoCode(width) {
       for (let j in this.qrcode) {
           let code = this.qrcode[j]; // 二维码内容
           new QRCode(this.$refs[`${this.qrcode[j]}`][0], {
               text: code,
               render: 'canvas',
               width: width,
               height: width,
               colorDark: '#000000',
               colorLight: '#ffffff'
           });
       }
   },

清除

for (let j in this.qrcode) {
       this.$refs.qrcode[j][0].innerHTML = ''
  }

使用

this.$nextTick(() => {
     this.printTwoCode(130);
 });

附:使用qrcodejs2生成多个二维码

首先安装qrcodejs2

然后引用  import QRCode from 'qrcodejs2'

<div class="box">
    <div v-for="(item, index) in list" class="boxscod" :key="index">
      <div :id="`code${item.id}`" :ref="`code${item.id}`" class="qrcode">
      </div>
      <div class="abc">
          <span class="cargo-wrap">{{ item.id }}</span>
          <span class="cargo-cardNo">{{ item.idCard }}</span>
        </div>
    </div>
  </div>
return {
      list: [
        { id: '01', idCard: 15336 },
        { id: '02', idCard: 18528 },
        { id: '03', idCard: 78542 },
        { id: '04', idCard: 46824 },  
      ],
    };
mounted() {
    this.showCode();
  },
  methods: {
    creatQrCode(id, code) {
      console.log(code);
      console.log(typeof code);
      var qrcode = new QRCode(id, {
        text: encodeURI(code), // 需要转换为二维码的内容
        width: 70,
        height: 70,
        colorDark: "#000000",
        colorLight: "#ffffff",
        // correctLevel: QRCode.CorrectLevel.H,
      });
      console.log(qrcode);
    },
    // 展示二维码
    showCode() {
      //   this.closeCode()
      this.$nextTick(() => {
        this.list.forEach((item) => {
          //   if (item.type === 1 || item.type === 2) {
          this.creatQrCode("code" + item.id, item.idCard);
          //   }
        });
      });
    },
  },

总结

到此这篇关于vue项目中使用qrcodesjs2生成二维码的文章就介绍到这了,更多相关vue用qrcodesjs2生成二维码内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • vue如何解决watch和methods值执行顺序问题

    vue如何解决watch和methods值执行顺序问题

    这篇文章主要介绍了vue如何解决watch和methods值执行顺序问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-08-08
  • Vue在chrome44偶现点击子元素事件无法冒泡的解决方法

    Vue在chrome44偶现点击子元素事件无法冒泡的解决方法

    这篇文章主要给大家介绍了关于Vue在chrome44偶现点击子元素事件无法冒泡的解决方法,文中通过示例代码介绍的非常详细,对大家学习或者使用Vue具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-12-12
  • 深入了解Vue3中侦听器watcher的实现原理

    深入了解Vue3中侦听器watcher的实现原理

    在平时的开发工作中,我们经常使用侦听器帮助我们去观察某个数据的变化然后去执行一段逻辑。在 Vue.js 2.x 中,你可以通过 watch 选项去初始化一个侦听器,称作 watcher。本文将详细为大家介绍一下侦听器的实现原理,需要的可以参考一下
    2022-04-04
  • 浅析webpack-bundle-analyzer在vue-cli3中的使用

    浅析webpack-bundle-analyzer在vue-cli3中的使用

    这篇文章主要介绍了webpack-bundle-analyzer在vue-cli3中的使用,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-10-10
  • vue+js实现视频淡入淡出效果

    vue+js实现视频淡入淡出效果

    这篇文章主要为大家详细介绍了vue+js实现视频的淡入淡出,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • Vue.js路由组件vue-router使用方法详解

    Vue.js路由组件vue-router使用方法详解

    这篇文章主要为大家详细介绍了Vue.js路由组件vue-router使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-12-12
  • vue+elementui实现表格多级表头效果

    vue+elementui实现表格多级表头效果

    这篇文章主要为大家详细介绍了vue + elementui实现表格多级表头,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-04-04
  • vant toast 关闭栈溢出问题及解决

    vant toast 关闭栈溢出问题及解决

    这篇文章主要介绍了vant toast 关闭栈溢出问题及解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • vue项目中loadsh库常用方法说明

    vue项目中loadsh库常用方法说明

    这篇文章主要介绍了vue项目中loadsh库常用方法说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • Vue设置长时间未操作登录自动到期返回登录页

    Vue设置长时间未操作登录自动到期返回登录页

    这篇文章主要介绍了Vue设置长时间未操作登录以后自动到期返回登录页,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2020-01-01

最新评论