vue项目生成二维码之qrcodejs2

首先第一步当然是安装了:

npm install qrcodejs2 --save,(有淘宝镜像的可以用cnpm进行安装);

第二步:引入,哪个页面用到,在哪个页面引入

import QRCode from 'qrcodejs2';

然后直接用就可以了,

<template>

<div id="qrcode"></div>

</template>

然后在method写入方法,一定要记住上面的id名和下面的参数名保持一致,就是我加粗的部分了

qrcode() {

      const qrcode = new QRCode('qrcode', {

        text: this.codeValue,

        colorDark: '#000',

        colorLight: '#fff',

      });

    }

最关键的一点,一定要在nextTick里面调用

this.$nextTick(() => {

          this.qrcode();

        });

如果你还是报错,报错还是这样的Error in nextTick: "TypeError: Cannot read property 'appendChild' of null"

那你就看看 this.qrcode();是在什么时候调用的,调用的时候dom 节点生成了吗??

解决办法,就是生成dom 节点之后在调用

举个例子:

这个是在打开dialog框之后再调用这个方法的,用watch监听一下,保证是在打开dialog框之后调用


watch: {

    dialogVisible(val) {

      if (val) {

        this.$nextTick(() => {

          this.qrcode();

        });

      }

    }

  },

小伙伴们你们学会了吗?有问题请留言哦

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 33、JS中的本地存储 把一些信息存储在当前浏览器指定域下的某一个地方(存储到物理硬盘中)1、不能跨浏览器传输:在...
    萌妹撒阅读 6,473评论 0 2
  • Vue实例 Vue实例创建和作用 -- 1. app.$data -> 所有data的数据 [obj](app.d...
    胖太_91bf阅读 8,827评论 0 3
  • Vue 框架的入口就是 Vue 实例,其实就是框架中的 view model ,它包含页面中的业务 处理逻辑、数据...
    云中一樵夫阅读 4,753评论 0 1
  • Vue 3.0 性能提升主要是通过哪几方面体现的? vue2在初始化的时候,对data中的每个属性使用define...
    Smallbore阅读 4,858评论 0 8
  • 一:什么是闭包?闭包的用处? (1)闭包就是能够读取其他函数内部变量的函数。在本质上,闭包就 是将函数内部和函数外...
    xuguibin阅读 13,310评论 1 52

友情链接更多精彩内容