首页 > 其他分享 >前端开发中怎么把链接转为二维码并展示?

前端开发中怎么把链接转为二维码并展示?

时间:2024-11-15 09:45:39浏览次数:1  
标签:vue 链接 容错 QRCode 二维码 qrCode document 前端开发

前言:

把一个链接生成一个二维码图片,这是我们前端非常常见的一个需求。那么我们应该如何做呢?

查看往期文章:

五分钟一百行代码,手写一个vue项目全局通用的toast提示组件

十五分钟两百行代码,手写一个vue项目全局通用的弹框

第一步:下载 Qrcode

npm install --save qrcode

第二步:准备容器

我们生成的二维码图片需要一个展示的容器,我们需要提前准备好。

<div id="qrCode"></div>

第三步:引入并使用

import QRCode from 'qrcode'

new QRCode(document.getElementById("qrCode"), {
    text: shareLink + "&p=qr_code&v=3", //生成二维码的文本
    width: document.querySelector("#qrCode").offsetWidth,
    height: document.querySelector("#qrCode").offsetWidth,
    colorDark: "#333333", //二维码颜色
    colorLight: "#ffffff", //二维码背景色
    correctLevel: QRCode.CorrectLevel.L //容错率,L/M/H
});

说明:

  1. 当你通过new调用之后就能生成要给二维码图片了,并且能够显示在你指定的容器当中;
  2. 因为我自己开发vue项目比较多,在vue项目中使用时,需要注意,最好放在 nextTick 中使用,保证容器渲染完成;
this.$nextTick(() => {
		new QRCode(document.getElementById("qrCode"), {
		text: shareLink + "&p=qr_code&v=3", //生成二维码的文本
		width: document.querySelector("#qrCode").offsetWidth,
		height: document.querySelector("#qrCode").offsetWidth,
		colorDark: "#333333", //二维码颜色
		colorLight: "#ffffff", //二维码背景色
		correctLevel: QRCode.CorrectLevel.L //容错率,L/M/H
	});
});
  1. correctLevel 容错率说明:

    • 在二维码(QR Code)的上下文中,容错率(Correct Level)是一个非常重要的概念,它表示二维码能在多大程度上被破损或遮挡而仍然能够被成功扫描和解码。容错率的设置对于二维码的实用性在实际应用中非常关键,尤其是在可能会遭受物理损害或部分遮挡的环境中。
    • 二维码标准定义了四个容错级别,每个级别都能容忍一定比例的二维码图像损坏:
      1. L (Low) :约7% 的错误可以被纠正。
      2. M (Medium) :约15% 的错误可以被纠正。
      3. Q (Quartile) :约25% 的错误可以被纠正。
      4. H (High) :约30% 的错误可以被纠正。
    • 选择更高的容错级别会增加二维码的复杂度和大小,因为需要加入更多的冗余数据来实现错误校正。这意味着相同的数据内容,高容错率的二维码可能会比低容错率的二维码大或包含更密集的模块(黑点和白点)。
    • 如果二维码不太可能受到损害或遮挡,并且空间有限,可以选择较低的容错率(如L或M)。
    • 如果二维码可能会在较为恶劣的环境中使用,或者预计会有一部分被遮挡或破损,应选择较高的容错率(如Q或H),以确保二维码仍然可读。

写在后面

这是一个通用的 qrcode 库的通用使用流程,跟框架无关,你可以按照流程操作;

对你有帮助的话给作者点一个免费的关注吧,感恩!Peace and love~~

标签:vue,链接,容错,QRCode,二维码,qrCode,document,前端开发
From: https://www.cnblogs.com/muqiqiang/p/18547408

相关文章

  • 呼叫中心开源系统FreeIPCC最新链接
    开源呼叫中心系统FreeIPCC最新链接作者:开源呼叫中心系统FreeIPCC,Github地址:https://github.com/lihaiya/freeipcc用户手册,登录系统查看即可!2024.11.11,最新链接、账户名、密码,enjoy!   话务/在线客服:(demo123/demo123@Abc) FreeIpcchttp://118.25.192.13:8822/cc......
  • png图片隐写实例之隐藏二维码
    图片隐写技术介绍:【如何在图片中塞入二维码不被发现】https://www.bilibili.com/video/BV12R4y1G72d/?share_source=copy_web&vd_source=d944df449598b7e51bbc29cddb033275png图片格式介绍:https://www.cnblogs.com/senior-engineer/p/9548347.htmlhttps://zhuanlan.zhihu.com......
  • 微信小程序——实现二维码扫描功能(含代码)
    ✅作者简介:2022年博客新星第八。热爱国学的Java后端开发者,修心和技术同步精进。......
  • 淘宝商品详情接口大揭秘:轻松复制商品链接与店铺秘籍全解析
    以下是关于淘宝商品详情接口以及轻松复制商品链接与店铺的全解析:淘宝商品详情接口:接口概述:淘宝商品详情接口是淘宝开放平台提供的一种服务,允许开发者通过API调用获取淘宝商品的详细信息,这些信息对于电商业务的多种应用场景具有重要价值。使用流程:注册淘宝开放平台......
  • SharePoint Online共享链接的参数是做什么的?
    前言今天,被一个小朋友问到,我们分享SharePointOnline文件的时候,为什么总有奇怪的参数?正文1.链接的例子https://<TenantName>.sharepoint.com/:w:/r/sites/<SiteName>2.简单的说明其实,链接是为了方便我们知道分享的文件的类型/:w–MicrosoftW......
  • 一个C#winform编写的2D数据曲线显示控件,三个Y轴,自定义曲线图表控件,电压电流实时数据曲
    一个C#winform编写的2D数据曲线显示控件,三个Y轴,自定义曲线图表控件,电压电流实时数据曲线,电压电流轨迹曲线实时刷新,点击显示此处数据(附下载链接)调用该控件案例截图如下所示:点我下载此资源》》》》》》》》......
  • YOLOV8应用|排球垫球计数|附带全部数据集与源码(见文末百度云盘链接)
    项目简介:该项目旨在利用YOLOv8算法实现排球垫球动作的自动识别与计数。YOLOv8作为计算机视觉领域的先进目标检测算法,具备高精度和实时性的特点,非常适合用于体育训练和测试中的自动化计数。项目将排球垫球视频作为输入,通过YOLOv8算法检测视频中的排球及垫球动作,自动记录垫球次......
  • 根据拼多多商品链接获取拼多多商品详情接口(pinduoduo.item_get_app)
    以下是使用拼多多商品详情接口 pinduoduo.item_get_app 的一般步骤:接口调用前的准备工作:注册并登录拼多多开放平台:首先需要在拼多多开放平台官网上注册一个账号,并完成登录。创建应用并获取API密钥:在开放平台中创建一个新的应用,以获取该应用的 appkey(即调用 key)和 a......
  • 使用 Python 实现高效网页爬虫——从获取链接到数据保存
    前言在这个时代,网络爬虫已成为数据分析与信息收集不可或缺的技术之一。本文将通过一个具体的Python项目来介绍如何构建一个简单的网络爬虫,它能够自动抓取指定网站的文章链接、标题、正文内容以及图片链接,并将这些信息保存为CSV文件。目标网站一、准备工作在开始编写爬......
  • 电脑提示kernel32.dll动态链接库报错怎么解决?kernel32.dll修复方法
    在使用电脑的过程中,你是否遇到过kernel32.dll动态链接库报错的情况呢?这个问题可能会让你感到困扰,但别担心,今天我们就来一起探讨一下kernel32.dll动态链接库报错的解决方法。一、了解kernel32.dllkernel32.dll是Windows操作系统的核心动态链接库之一,它包含了许多重要......