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.js实现九宫格图片展示模块

    Vue.js实现九宫格图片展示模块

    这篇文章主要为大家详细介绍了Vue.js实现九宫格图片展示模块,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-10-10
  • Vuex利用state保存新闻数据实例

    Vuex利用state保存新闻数据实例

    本篇文章主要介绍了Vuex利用state保存新闻数据实例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • vue执行配置选项npm run serve的本质图文详解

    vue执行配置选项npm run serve的本质图文详解

    本地开发一般通过执行npm run serve命令来启动项目,那这行命令到底存在什么魔法?下面这篇文章主要给大家介绍了关于vue执行配置选项npm run serve的本质的相关资料,需要的朋友可以参考下
    2023-05-05
  • vue实现实时搜索显示功能

    vue实现实时搜索显示功能

    这篇文章主要为大家详细介绍了vue实现实时搜索显示功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-04-04
  • 关于vue3编写挂载DOM的插件问题

    关于vue3编写挂载DOM的插件问题

    这篇文章主要介绍了vue3编写挂载DOM的插件的问题,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-07-07
  • 3分钟读懂移动端rem使用方法(推荐)

    3分钟读懂移动端rem使用方法(推荐)

    这篇文章主要介绍了rem使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05
  • 详解vue.js下引入百度地图jsApi的两种方法

    详解vue.js下引入百度地图jsApi的两种方法

    这篇文章主要介绍了详解vue.js下引入百度地图jsApi的两种方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-07-07
  • Element的穿梭框数据量大时点击全选卡顿的解决方案

    Element的穿梭框数据量大时点击全选卡顿的解决方案

    本文主要介绍了Element的穿梭框数据量大时点击全选卡顿的解决方案,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-10-10
  • 解决vue使用vant下拉框van-dropdown-item 绑定title值不变问题

    解决vue使用vant下拉框van-dropdown-item 绑定title值不变问题

    这篇文章主要介绍了解决vue使用vant下拉框van-dropdown-item 绑定title值不变问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-08-08
  • 一文详解vue2的diff算法流程

    一文详解vue2的diff算法流程

    本篇文章将会尝试从算法的角度主要聊一聊vue2的diff策略,帮助读者朋友在遇到相关的面试题时可以和面试官谈笑风生,文中有相关的图解和代码示例,感兴趣的同学跟着小编一起来看看吧
    2023-08-08

最新评论