【前端】Vue项目和微信小程序生成二维码和条形码

前言:哈喽,大家好,我是前端菜鸟的自我修养!今天给大家分享Vue项目和微信小程序如何生成二维码和条形码,介绍了JsBarcode、wxbarcode等插件,并提供具体代码帮助大家深入理解,彻底掌握!原创不易,如果能帮助到带大家,欢迎 收藏+关注 哦 💕

🌈🌈文章目录

一、简介

1. 二维码

2. 条形码

二、微信小程序 - 生成二维码(qrcode)和条形码(barcode)

1.安装

2. 使用方法

3. 条形码

4. 二维码

5. 具体实例

三、VUE 生成二维码(qrcodejs)和条形码(barcode)

1. VUE 生成二维码(qrcodejs)

1.1 安装依赖 

1.2 组件内使用

1.3 完整实例

2. VUE 条形码(barcode)

2.1 安装依赖

2.2 main.js中全局引入

2.3 定义组件

2.4 使用组件

2.5 结果展示

参考文档:

一、简介

1. 二维码

二维码又称二维条码,常见的二维码为QR Code,QR全称Quick Response,是一种编码方式。它比传统的Bar Code条形码能存更多的信息,也能表示更多的数据类型

2. 条形码

条形码(barcode)是将宽度不等的多个黑条和空白,按照一定的编码规则排列,用以表达一组信息的图形标识符。常见的条形码是由反射率相差很大的黑条(简称条)和白条(简称空)排成的平行线图案。条形码可以标出物品的生产国、制造厂家、商品名称、生产日期、图书分类号、邮件起止地点、类别、日期等许多信息,因而在商品流通、图书管理、邮政管理、银行系统等许多领域都得到广泛的应用 。

二、微信小程序 - 生成二维码(qrcode)和条形码(barcode)

采用wxbarcode--微信小程序生成条码和二维码模块。

1.安装

$ npm install wxbarcode

2. 使用方法

import wxbarcode from 'wxbarcode'wxbarcode.barcode('barcode', '1234567890123456789', 680, 200);
wxbarcode.qrcode('qrcode', '1234567890123456789', 420, 420);

3. 条形码

函数名:barcode

函数原型:barcode(id, code, width, height)

参数:

  • id: wxml文件中的 Canvas ID
  • code: 用于生成条形码的字符串
  • width: 生成的条形码宽度,单位 rpx
  • height: 生成的条形码高度,单位 rpx

4. 二维码

函数名:qrcode

函数原型:qrcode(id, code, width, height)

参数:

  • id: wxml文件中的 Canvas ID
  • code: 用于生成二维码的字符串
  • width: 生成的二维码宽度,单位 rpx
  • height: 生成的二维码高度,单位 rpx

5. 具体实例

utils文件下载地址,此步骤是必须的

pages/index/index.js

//index.js
var wxbarcode = require("../../utils/index.js");Page({data: {code: "1234567890123456789",},onLoad: function () {wxbarcode.barcode("barcode", "1234567890123456789", 680, 200);wxbarcode.qrcode("qrcode", "1234567890123456789", {codeSize: 420,color: "#ff0000",bgcolor: "#ffffff",});},
});

pages/index/index.wxml

<!--index.wxml-->
<view class="container page"><view class="panel"><view class="header"></view><view class="barcode"><view class="barnum">{{code}}</view><canvas canvas-id="barcode" /></view><view class="qrcode"><canvas canvas-id="qrcode" /></view></view>
</view>

三、VUE 生成二维码(qrcodejs)和条形码(barcode)

1. VUE 生成二维码(qrcodejs)

QRCode.js 是用于制作 QRCode 的 javascript 库。 QRCode.js 支持跨浏览器与 HTML5 Canvas 和 DOM 中的表格标签。 QRCode.js 没有依赖项。

1.1 安装依赖 

npm i qrcodejs2 --save

1.2 组件内使用

import QRCode from 'qrcodejs2'// 1、简单使用:
const qrcode = new QRCode(qrcodeDiv, 'this is qrcode')// 2、复杂使用
const qrcode = new QRCode(qrcodeDiv, {text: 'this is qrcode', // 用于生成二维码的文本width: 200, // 高度height: 200, // 宽度colorDark: '#000000', //前景色colorLight: '#ffffff', //后景色correctLevel: QRCode.CorrectLevel.H, //容错级别 QRCode.CorrectLevel.L QRCode.CorrectLevel.M QRCode.CorrectLevel.Q QRCode.CorrectLevel.H
}) 

1.3 完整实例

<template><div><div id="qrCode" ref="qrCodeDiv"></div> </div>
</template><script> import QRCode from 'qrcodejs2';  // 引入 QRCodeexport default {name: "CdsQRCode2", data() {return { };},mounted() {this.getCode();}, methods: {getCode() { new QRCode(this.$refs.qrCodeDiv, {text: 'this is qrcode', // 用于生成二维码的文本width: 200,height: 200,colorDark: '#333', //二维码颜色colorLight: '#fff', //二维码背景色correctLevel: QRCode.CorrectLevel.L//容错率,L/M/H})  },}
};
</script>  

2. VUE 条形码(barcode)

JsBarcode 是一个用 JavaScript 编写的条形码生成器。它支持多种条形码格式,可在浏览器和 Node.js 中使用。当它用于 web 时它没有依赖性,但如果你喜欢它,它可以与 jQuery 一起使用。

2.1 安装依赖

npm install jsbarcode --save

2.2 main.js中全局引入

import JsBarcode from 'jsbarcode'
Vue.prototype.jsbarcode = JsBarcode

2.3 定义组件

'@/components/Barcode'

<template><div class="barcode-wrapper"><img :style="widthStyleObj" class="barcode" /></div>
</template><script>
import JsBarcode from 'jsbarcode'
export default {props: {JsBarcodeData: {type: Object,},}, mounted() {this.$nextTick(() => {JsBarcode('.barcode', String(this.JsBarcodeData.text), {     // format: "CODE39",//选择要使用的条形码类型 --  default: "auto" (CODE128)width:1,//设置条之间的宽度height:40,//高度displayValue:false ,//是否在条形码下方显示文字//   text:"456",//覆盖显示的文本//   fontOptions:"bold italic",//使文字加粗体或变斜体//   font:"fantasy",//设置文本的字体//   textAlign:"left",//设置文本的水平对齐方式//   textPosition:"top",//设置文本的垂直位置//   textMargin:5,//设置条形码和文本之间的间距fontSize:15,//设置文本的大小background: this.JsBarcodeData.background,,//设置条形码的背景lineColor: this.JsBarcodeData.lineColor,//设置条和文本的颜色。margin:0//设置条形码周围的空白边距});})},
}
</script>
<style scoped>
.barcode-wrapper {display: flex;justify-content: center;width: 100%;height: 100%;
}.barcode {max-width: 375px !important
}
</style>

2.4 使用组件

<template><div><barcode :JsBarcodeData="JsBarcodeConfigData"/></div>
</template><script>
import Barcode from '@/components/Barcode'
export default {name: "barcode",components: {Barcode},data() {return {JsBarcodeConfigData : {text: '12345678909876543210', // 条形码必须是字符串类型,否则会出现后面几位为数字的情况。lineColor: "#333", //条形码颜色background: "#fff", //条形码背景色width: this.widthStyleObj, }}},
}
</script>

2.5 结果展示

参考文档:

  • https://github.com/alsey/wxbarcode
  • https://www.npmjs.com/package/wxbarcode/v/1.0.2
  • https://github.com/lindell/JsBarcode

 好了,本文就到这里吧,点个关注再走嘛~ 

🚀 个人简介:7年开发经验,现任职某国企前端负责人,分享前端相关技术与工作常见问题~
💟 作    者:前端菜鸟的自我修养❣️
📝 专    栏:前端常见问题汇总,避坑大全
🌈 若有帮助,还请 关注➕点赞➕收藏  ,不行的话我再努努力💪💪💪  

 更多专栏订阅推荐:

👍 前端工程搭建
💕 vue从基础到起飞

📝 javascript深入研究

✍️ GIS地图与大数据可视化

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/35326.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

为什么要学Java?

想要自己教会自己java&#xff0c;从小白成长到架构师。实现硬实力就业&#xff01; 因为Java是全球排名第一的编程语言&#xff0c;Java工程师也是市场需求最大的软件工程师&#xff0c;选择Java&#xff0c;就是选择了高薪。 为什么Java应用最广泛&#xff1f; 从互联网到…

基于FreeRTOS+STM32CubeMX+LCD1602+MCP4141(SPI接口)的数字电位器Proteus仿真

一、仿真原理图: 二、运行效果: 三、软件部分: 1)、SPI读写: 2)、初始化部分: void SystemClock_Config(void) { RCC_OscInitTypeDef RCC_OscInitStruct = {0}; RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; /** Initializes the CPU, AHB and APB busses clocks …

SQL连接与筛选:解析left join on和where的区别及典型案例分析

文章目录 前言数据库在运行时的执行顺序一、left join on和where条件的定义和作用left join on条件where条件 二、left join on和where条件的区别原理不同left join原理&#xff1a;where原理&#xff1a; 应用场景不同执行顺序不同&#xff08;作用阶段不同&#xff09;结果集…

Netty学习(二)——黏包半包、协议设计解析、聊天室

一、粘包与半包 1.1 粘包和半包复现 1、粘包复现&#xff1a; Server代码&#xff1a; public class ProblemServer {public static void main(String[] args) throws InterruptedException {new ServerBootstrap()//若是指定接收缓冲区大小&#xff1a;就会出现黏包、半包…

Python3 学习笔记——基本知识入门 | 菜鸟教程

Python3 学习笔记——基本知识入门 | 菜鸟教程 目录 Python3 学习笔记——基本知识入门 | 菜鸟教程基础知识标识符python保留字注释行与缩进多行语句数字(Number)类型字符串(String)空行等待用户输入同一行显示多条语句多个语句构成代码组print 输出import 与 from...import命令…

DDR3控制器(一)DDR3 IP调用

目录 一、DDR3 IP核简介 二、DDR3 IP核调用 在千兆以太网通信中用到了DDR3控制器&#xff0c;但是并没有对其做相关介绍。这次准备重新整理一下DDR3控制相关知识&#xff0c;复习巩固一下。 一、DDR3 IP核简介 MIG IP核&#xff08;Memory Interface Generator&#xff09;是…

气膜游泳馆建造成本要多少—轻空间

随着人们对健康生活的追求和游泳运动的普及&#xff0c;游泳馆的需求不断增加。传统游泳馆的建设周期长、成本高&#xff0c;而气膜游泳馆以其独特的优势成为一种新的选择。轻空间将详细分析气膜游泳馆的建造成本及其优势。 气膜游泳馆的基本结构 气膜游泳馆主要由以下几个部分…

静电场的基本方程

目录 场积分方程 通量&#xff08;高斯定理&#xff09; 环量 场微分方程 散度 旋度 小结 补充知识 立体角 场积分方程 通量&#xff08;高斯定理&#xff09; 环量 场微分方程 散度 旋度 小结 补充知识 立体角

Open3D 删除点云中重复的点

目录 一、算法原理1、重叠点2、主要函数二、代码实现三、结果展示本文由CSDN点云侠原创,原文链接。如果你不是在点云侠的博客中看到该文章,那么此处便是不要脸的爬虫与GPT。 一、算法原理 1、重叠点 原始点云克隆一份   构造重叠区域   合并点云获得重叠点 2、主要…

玄子Share-本地部署 AI 大模型与构建知识库

玄子Share-本地部署 AI 大模型与构建知识库 部署环境概述 警告&#xff01;OpenAI 宣布全面封锁中国 API 接入 昨天&#xff0c;许多开发者从 OpenAI 那收到了一份警告信 您好&#xff0c; 据我们的数据监测&#xff0c;贵组织正从 OpenAl 当前未支持的区域产生 API 访问流量…

ai智能写作助手有哪些?3款AI工具推荐

ai智能写作助手有哪些&#xff1f;在数字化时代的浪潮中&#xff0c;AI智能写作助手如同智慧的灯塔&#xff0c;照亮了创作者们的道路。它们不仅极大地提升了写作效率&#xff0c;让文字流淌更加顺畅&#xff0c;更能够深入挖掘和激发创作者的内在灵感&#xff0c;将创意的火花…

github配置可拉取项目到本地

首先配置用户名和邮箱&#xff1a; git config --global user.name 自己的名字git config --global user.email 自己的邮箱配置完之后检查一下&#xff1a; git config --global user.namegit config --global user.email如果提示的是自己配置好的名字和邮箱就Ok 然后拉取githu…

Luminar Neo 1.20.0 (macOS Universal) - 创新 AI 图像编辑器

Luminar Neo 1.20.0 (macOS Universal) - 创新 AI 图像编辑器 利用尖端的人工智能生成技术&#xff0c;轻松增强照片效果 请访问原文链接&#xff1a;https://sysin.org/blog/luminar-neo/&#xff0c;查看最新版。原创作品&#xff0c;转载请保留出处。 作者主页&#xff1…

Linux系统学习——指令四

Linux系统学习——指令四 Linux 系统学习——指令四查看文件MD5校验和fuser 指令基本语法常用选项访问类型使用示例 系统信息 Linux 系统学习——指令四 查看文件MD5校验和 在Linux中&#xff0c;你可以使用 md5sum 命令来查看一个文件的MD5校验和。以下是具体的操作方法&…

河南资信乙级预评价:人员需缴唯一社保吗?

河南资信乙级预评价中&#xff0c;人员确实需要缴纳唯一社保。以下是详细的解读和归纳&#xff1a; 一、社保唯一性的定义 社保唯一性指的是参与河南资信乙级预评价的咨询工程师&#xff08;投资&#xff09;必须在申请单位有唯一且连续的社保缴纳记录。这一要求旨在确保咨询…

【python013】pyinstaller打包PDF提取脚本为exe工具

1.在日常工作和学习中&#xff0c;遇到类似问题处理场景&#xff0c;如pdf文件核心内容截取&#xff0c;这里将文件打包成exe可执行文件&#xff0c;实现功能简便使用。 2.欢迎点赞、关注、批评、指正&#xff0c;互三走起来&#xff0c;小手动起来&#xff01; 3.欢迎点赞、关…

Pura 70 系列超高速风驰闪拍,捕捉美好,告别抓拍模糊

及时而准确的将画面定格&#xff0c;把事件最具有表现力的瞬间直观、真实地传达给观者&#xff0c;以使将抓拍影响的意义发挥最大化&#xff0c;由于抓拍摄影作品大多反映的是比较自然&#xff0c;真实的人和事&#xff0c;得到了社会的广泛认可&#xff0c;抓拍摄影也正日益成…

vue项目无后台版本打包上传到服务器

打包项目 也可以在文件目录下npm run build 生成dist文件夹 将dist文件夹里的所有文件拷贝到站点的根目录&#xff0c;这里使用宝塔面板进行操作 前提你得先创建站点&#xff0c;域名绑定等操作

#03动态规划

要点&#xff1a; 动态规划方法与贪心法、分治法的异同&#xff1b; 动态规划方法的基本要素与求解步骤&#xff1b; 动态规划方法的应用。 难点&#xff1a; 如何根据问题的最优子结构性质构造构造动态规划方法中的递归公式或动态规划方程。 动态规划的基本思想 动态规…

【计算机网络仿真】b站湖科大教书匠思科Packet Tracer——实验9 IPv4地址 — 划分子网

一、实验目的 1.学习划分子网的方法&#xff1b; 2.验证子网掩码的作用。 二、实验要求 1.使用Cisco Packet Tracer仿真平台&#xff1b; 2.观看B站湖科大教书匠仿真实验视频&#xff0c;完成对应实验。 三、实验内容 1.构建网络拓扑&#xff1b; 2.划分子网&#xff1b; …