2021/04/29 插件qrcodejs2将后端链接转换成二维码

Nuxt - 解决引入 qrcodejs2.js / QRCode.js 报错(document is not defined) Nuxt-解决引入qrcodejs2.js/QRCode.js报错(documentisnotdefined),nuxt.js如何使用qrcodejs2.js/QRCode.js二维码插件?nuxt使用QRCode.js生成二维码,nuxt项目中使用qrcode,Nuxt.js不能用npm安装插件,原本是vue写的,改用nuxt.js项目后qrcodejs2.js/QRCode.js报错,nuxt使用qrcodejs2,nuxt使用QRCode.js生成二维码,j 阅读详情
  • 背景
    需求内有个扫码功能,后端会把链接从接口返回给我,我把收到的链接转换成二维码显示到页面上

  • 步骤

– step1.安装

npm install qrcodejs2 --save

– step2. 引入

–1.可以在main.js 中全局引用(这种方式我会报错)

–2.在使用的页面上局部应用

import QRCode from "qrcodejs2";

–step3.页面上写代码

<template>
  <div>
    <div>
      <p>签章二维码test</p>
    </div>
    <!-- code box 这里可以自己写样式,也可以写加在下个div上 -->
    <div class="code_box">
      <div id="qrcode" ref="qrcode"></div>
    </div>
  </div>
</template>

<script>
	import QRCode from "qrcodejs2";
	data() {
	    return {
	      qCodeUrl: "",
	    };
	},
	mounted() {
    //method1  
     this.$nextTick(() => {
       this.initCode();
     });

    //method2  报错 el.appendChild is not a function
     this.$nextTick(() => {
       setTimeout(() => {
         this.initCode();
       }, 2000);
     });
  },
  methods:{
  	//⚠️**this.$refs.qrcode**不要写成字符串了,否则会一直报错 can't append of null
	var qrcode = new QRCode(this.$refs.qrcode, {
   	text: this.qCodeUrl, // 需要生成二维码的内容
    width: 147,
    height: 147,
    colorDark: "#000000",
    colorLight: "#ffffff",
    correctLevel: QRCode.CorrectLevel.H,
  });
//也可以写成这种
let myCode = new QRCode("qrcode", {
        width: 150, // 二维码宽度
        height: 150, // 二维码高度
        // text: "sdfsdfsf",
        text: this.imgCode,
      });
}
</script>

==我在main.js中这样引入的
在这里插入图片描述
–在页面上使用就会报错 el.appendChild is not a function

–结合$nextTick和setTimeout一起使用,还是会报错,有解决过这个问题的朋友请留言

=更新

–由于dom未渲染完成,调用生成二维码函数会报错,所以,我的代码是在watch中 监听到数据的改变,再来调用生成二维码函数,最好和setTimeout还有$nextTick连用

watch: {
    imgCode: {
      //深度监听,可监听到对象、数组的变化
      handler(val, oldVal) {
        let that = this;
        if (val) {
          that.$nextTick(function (prams) {
            that.createQR();
          });
        }
      },
    },
  },
Vue 报错TypeError: this.$set is not a function 的解决方法 主要介绍了Vue 报错TypeError: this.$set is not a function 的解决方法,分享给大家,需要的朋友们下面随着小编来一起学习学习吧 立即下载

相关推荐

MinerU与Docling:智能文档处理框架对比

本文对比分析了MinerU和Docling两大智能文档处理框架。MinerU专注于高精度PDF解析,采用多模态AI技术,在学术文献、金融报表等复杂文档处理上表现优异;Docling则定位企业级多格式文档处理平台,支持10+格式转换,更适合文档管理系统等场景。技术层面,MinerU基于VLM模型实现端到端处理,Docling采用插件化多后端架构。性能测试显示MinerU精度更高(95%+),但资源消耗较大;Docling处理速度更快(1-3秒/页),部署更灵活。

轩哥的个人研究和成长记录 1916

vue 项目 二维码吗引入 报错 el.appendChild is not a function

vue 项目 二维码吗引入 报错 el.appendChild is not a function

shanshanbao的博客 2337

别再让PyCharm吃光你的C盘!保姆级教程:安全迁移config、plugins和remote sources到D盘

本文提供了一份详细的PyCharm配置与缓存文件迁移指南,帮助开发者将config、plugins和remote sources等占用大量C盘空间的文件安全转移到D盘。通过修改data.properties文件和正确迁移顺序,确保PyCharm功能不受影响,同时释放宝贵的系统盘空间。

weixin_28836989的博客 423

Uncaught TypeError: appendChild is not a function

js报错

XiongYiping666的博客 1085

RDP Wrapper失效了?别慌!教你如何手动为Windows 10/11最新版本添加rdpwrap.ini配置

本文详细介绍了当RDP Wrapper在Windows 10/11最新版本中失效时,如何手动添加rdpwrap.ini配置以恢复多用户远程桌面功能。通过获取最新配置文件、安全替换配置的完整流程以及高级手动配置技巧,帮助用户解决[Not support]问题,确保远程工作流程不受系统更新影响。

weixin_30765577的博客 624

信捷CODESYS平台伺服电机转矩控制模式应用与切换

信捷CODESYS二次开发软件:XS Studio 在运动控制中的转矩控制案例

weixin_64614866的博客 1万+

关于JS使用appendChild(Node)函数出现Uncaught TypeError: appendChild is not a function的解决方案

关于JS使用appendChild(Node)函数出现Uncaught TypeError: appendChild is not a function的解决方案 再学习JS的过程中,我想通过createElement()方法创建一个节点再通过appendChild()方法插入到页面中,但是使用的过程中出现了Uncaught TypeError: appendChild is not a function的报错,在经过查找资料和解决方案,我发现在获取DOM元素时使用getElementByXXX()方法时,

高电平的博客 8188

结构光三维重建(一)条纹结构光三维重建

在近景三维重建领域,结构光技术可以说是应用最广泛的,尤其在工业领域。该技术目前具有高精度和无视弱纹理等优点,但复杂的室外环境还是会对该技术造成一定程度的干扰。目前用的比较多的结构光分别两大类:线结构光以及条纹结构光。接下来我先来简单介绍一下条纹结构光三维重建,事实上,条纹结构光的原理与双目立体匹配是非常相似的。...

AAAA202012的博客 1万+

JS添加子节点报错:appendChild is not a function

报错信息: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title&

qq_44731369的博客 1万+

uniApp微信小程序:利用live-pusher人脸活体检测功能+完整示例代码,uniapp使用live-pusher直播推流组件实现人脸验证-活体检测,检测人脸中的动作包括眨眼、张嘴、左右摇头动作

UniApp 使用 live-pusher 实现人脸活体检测(附完整源码)uniapp开发微信小程序人脸检测活体检测,在uni-app的微信小程序项目中使用live-pusher实现人脸识别,uniapp使用live-pusher实现模拟人脸识别效果,张张嘴、眨眨眼、向左摇头、向右摇头等动作,免费使用人脸活体检测的插件方案,uniapp小程序怎么免费使用人脸活体,直播推流,UNIAPP微信小程序使用live-pusher实现人脸识别(拍照)功能,在uni-app项目中实现人脸识别,既使用uni-app中的l

✅ 精选推荐文章 3014

【用unity实现100个游戏之34】使用环状(车轮)碰撞器(Wheel Collider)从零实现一个汽车车辆物理控制系统,实现一个赛车游戏

本文介绍了在Unity中使用Wheel Collider组件实现3D车辆物理控制系统的详细步骤。主要内容包括: Wheel Collider参数详解:包括基础参数(质量、半径等)、悬挂弹簧系统(弹力、减震等)和摩擦力设置(前向/侧向摩擦曲线)。 准备工作流程: 导入赛车模型、赛道和树木素材 为车身添加Rigidbody和MeshCollider 创建四个Wheel Collider并调整参数(半径、悬挂距离等) 优化摩擦系数设置防止侧滑 实现车辆控制: 通过代码控制车轮前后移动和转向 提供底盘系统设置(四轮

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 2658

vue项目中使用生成动态二维码

vue项目中使用QRCode.js生成二维码 看了好多blog,也尝试了多种方法,最后在QRCode.js文档上终于看懂了一些,一路踩着坑,终于做出了符合自己心意的东西。 1、环境准备 (1)、首先在项目中安装qrcodejs2: npm i qrcodejs2 (2)、在组件中调用,我是在哪儿使用哪儿调用的。(ps:在main.js中引入会报错) 2、代码 <template> ...

枫 1744

LangGraph-StateGraph 和 Graph API 源码分析

摘要: StateGraph是LangGraph的核心API,用于构建有状态工作流图。本文分析了其实现原理,包括: 核心类关系:StateGraph(构建器)和CompiledStateGraph(继承自Pregel的可执行图) 关键流程:状态模式到通道的映射、节点到PregelNode的转换 实现特点: 支持TypedDict和Pydantic两种状态模式 自动选择通道类型(LastValue或BinaryOperatorAggregate) 通过映射函数处理节点输入输出 边实现基于通道写入机制 编译过程

838

【vue3常见报错5】Uncaught (in promise) TypeError: xxx is not a function

【vue3常见报错5】Uncaught (in promise) TypeError: xxx is not a function:检查是否正确导入函数或模块。确认传递参数的类型和数量与函数定义相匹配。确认参数值不为null或undefined。

朱远辉的博客 1万+

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

Vue使用QRCode插件,生成二维码及Error in mounted hook: "TypeError: Cannot read property 'appendChild' of null"

第一步安装 npm install --save qrcodejs2 第二步项目中引入 import QRCode from "qrcodejs2"; //二维码 第三步 使用 <template> <div class="qrcodeimg"> <p id="qrcode"></p> </d...

xy19950125的博客 9274

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

JavaScript创建节点报错:xxx.appendChild is not a function

报错: 原因: 使用domElement.appendChild()中,获取domElement 时,使用了getElementsByClassName() 这类获得的结果是数组的函数,没有定位到其中的某一个对象。 解决方法: 获取到数组的第一个对象,var domElement = getElementsByClassName(“div”) [0] 使用getElementsById获取到唯一的对象 ...

Acid_lemon的博客 1876

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

一次循环动态打印输出多张不同内容二维码 QRCODE方法is not a function 以及遇到的其他问题 已解决

关于循环生成动态二维码遇到的QRCODE.JS不调用生成图片方法打印图片不显示 JQUERY JS 请自行转化,本例俩种方法混合使用 需求 由于有需求,需要做一个标签,左边是动态流水号,动态箱号,右边是根据左边内容变化, 在写代码的时候,把生成二维码的QRCODE 调用方法写在了循环里,结果调试发现,预览界面生成的都是CANVAS的二维码,但是window.print()打印inner ...

记HTML5 JS jquery 关于给自画页面传值问题 7670

Vue使用qrcodejs2插件做弹窗二维码,以及解决cannot read property“appendChild‘ of undefined 问题

如果使用弹窗显示二维码, 那就涉及父子组件传值。 在父子组件的生命周期中, mounted() 触发的顺序是先子后父,控制台打印如下: 所以使用 mounted()去触发转换二维码的方法,控制台肯定会报错cannot read property"appendChild" of null 。 因为你获取这节点时,节点还没加载。弹窗的页面还没有被挂载到,就执行了这个方法,所以就会报错。 加 nextTick() 或者 加延时函数 setTimeOut() 都是没有用的。 后面去看了element官网里面的D

weixin_43400431的博客 6711

domElement.appendChild is not a function

好奇怪,为何appendChild会不是一个函数嘞,简直中邪了。 (一) domElement.appendChild()中的domElement使用了getElementsByClassName()这样类似于选中数组的函数,而没有定位到其中的某一个对象。

youngLady兰的博客 1万+

Uncaught TypeError: $(...).appendChild is not a function

如上图所示,找不到$()这个function,但是在上面我定义了 : function $(id) { return document.getElementById(id); } 用于获取jsp页面属性,在本地是没有问题的,但是到了线上却找不到$(id)了, 无奈之余只好将$换成别的函数名,就可以了

Koow的博客 9966

vue2.0实现引用qrcode.js实现获取改变二维码的样式

vue代码 template> div class="qart"> div id="qrcode" ref="qrcode"> div> input type="text" id="getval" value="" placeholder="修改这个值改变二维码"> div> template> script> ex

iceking66的博客 3万+
上一篇: 2021/04/29 element-ui自定义表单验证规则(邮箱,手机号,身份证,社会信用代码)
下一篇: 2021/04/29 vue用computed实现table列求和
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值