位置: IT常识 - 正文

vue2移动端使用vue-qrcode-reader实现扫一扫功能(vue 移动端)

编辑:rootadmin
vue2移动端使用vue-qrcode-reader实现扫一扫功能

推荐整理分享vue2移动端使用vue-qrcode-reader实现扫一扫功能(vue 移动端),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:基于vue的移动端怎么开发,vue移动端项目实例,vue3移动端ui,vue如何做移动端适配,vuetify 移动端,vue如何做移动端适配,基于vue的移动端怎么开发,vue如何做移动端适配,内容如对您有帮助,希望把文章链接给更多的朋友!

移动端实现扫一扫   扫码功能

第一种:如果是用uniapp开发  可以直接使用uni的语法 并且兼容多端

第二种:如果是开发浏览器的网页,基于微信的话,也可以用微信的weixin-js-sdk

        具体流程参考官网:概述 | 微信开放文档

第三种:用第三方vue-qrcode-reader实现扫一扫功能,

        详细流程参考官网:Simple | Vue Qrcode Reader

vue2移动端使用vue-qrcode-reader实现扫一扫功能(vue 移动端)

以下内容为用vue-qrcode-reader实现扫一扫功能步骤

1.下载vue-qrcode-reader依赖

//   npm 下载

npm install --save vue-qecode-reader

//   cnpm 下载

cnpm install --save vue-qrcode-reader

 2.此次流程是在A页面添加扫一扫button,然后点击跳转到B页面,然后扫一扫写在B页面,进入B页面初始化,然后同意使用相机,在扫描到二维码后携带扫到的内容跳转到A页面

代码如下

<template> <div class="saoma"> <qrcode-stream @decode="onDecode" @init="onInit" style="height: 100vh;width:100vw"> <div> <div class="qr-scanner"> <div class="box"> <div class="line"></div> <div class="angle"></div> </div> </div> </div> </qrcode-stream> </div></template><script> import { QrcodeStream } from 'vue-qrcode-reader'; export default { components: { QrcodeStream }, data() { return { result: '', // 扫码结果信息 error: '' // 错误信息 } }, methods: { onDecode(result) { if(result){ this.$router.push({ path:'/', query: { code:result, } }) } }, async onInit(promise) { try { await promise } catch (error) { if (error.name === 'NotAllowedError') { window.alert('您需要授予相机访问权限') this.$router.push({path:'/'}) } else if (error.name === 'NotFoundError') { this.$router.push({path:'/'}) window.alert('这个设备上没有摄像头') } else if (error.name === 'NotSupportedError') { this.$router.push({path:'/'}) window.alert('所需的安全上下文(HTTPS、本地主机)') } else if (error.name === 'NotReadableError') { this.$router.push({path:'/'}) window.alert('相机被占用') } else if (error.name === 'OverconstrainedError') { this.$router.push({path:'/'}) window.alert('安装摄像头不合适') } else if (error.name === 'StreamApiNotSupportedError') { this.$router.push({path:'/'}) window.alert('此浏览器不支持流API') } } }, } }</script><style scoped> .saoma { width: 100vw; height: 100vh; } .qr-scanner { background-image: linear-gradient(0deg, transparent 24%, rgba(32, 255, 77, 0.1) 25%, rgba(32, 255, 77, 0.1) 26%, transparent 27%, transparent 74%, rgba(32, 255, 77, 0.1) 75%, rgba(32, 255, 77, 0.1) 76%, transparent 77%, transparent), linear-gradient(90deg, transparent 24%, rgba(32, 255, 77, 0.1) 25%, rgba(32, 255, 77, 0.1) 26%, transparent 27%, transparent 74%, rgba(32, 255, 77, 0.1) 75%, rgba(32, 255, 77, 0.1) 76%, transparent 77%, transparent); background-size: 3rem 3rem; background-position: -1rem -1rem; width: 100%; /* height: 100%; */ height: 100vh; position: relative; background-color: #1110; /* background-color: #111; */ } .qr-scanner .box { width: 213px; height: 213px; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); overflow: hidden; border: 0.1rem solid rgba(0, 255, 51, 0.2); /* background: url('') no-repeat center center; */ } .qr-scanner .line { height: calc(100% - 2px); width: 100%; background: linear-gradient(180deg, rgba(0, 255, 51, 0) 43%, #00ff33 211%); border-bottom: 3px solid #00ff33; transform: translateY(-100%); animation: radar-beam 2s infinite alternate; animation-timing-function: cubic-bezier(0.53, 0, 0.43, 0.99); animation-delay: 1.4s; } .qr-scanner .box:after, .qr-scanner .box:before, .qr-scanner .angle:after, .qr-scanner .angle:before { content: ''; display: block; position: absolute; width: 3vw; height: 3vw; border: 0.2rem solid transparent; } .qr-scanner .box:after, .qr-scanner .box:before { top: 0; border-top-color: #00ff33; } .qr-scanner .angle:after, .qr-scanner .angle:before { bottom: 0; border-bottom-color: #00ff33; } .qr-scanner .box:before, .qr-scanner .angle:before { left: 0; border-left-color: #00ff33; } .qr-scanner .box:after, .qr-scanner .angle:after { right: 0; border-right-color: #00ff33; } @keyframes radar-beam { 0% { transform: translateY(-100%); } 100% { transform: translateY(0); } }</style>

以上内容即为使用vue-qrcode-reader实现扫一扫功能的流程

可以直接复制粘贴使用哦

如果此文章对您有用,请留下您宝贵的一键三连,给作者一点鼓励

本文链接地址:https://www.jiuchutong.com/zhishi/288937.html 转载请保留说明!

上一篇:nvidia显卡驱动、cuda、cudnn、tensorflow对应版本(nvidia显卡驱动怎么安装)

下一篇:vue 计算属性未重新计算 / computed 未触发 / computed 原理&源码分析(vue3 计算属性)

  • switch三码合一啥意思(switch三码合一二码合一)

    switch三码合一啥意思(switch三码合一二码合一)

  • 微信朋友圈怎么分享15秒以上的视频(微信朋友圈怎么批量删除)

    微信朋友圈怎么分享15秒以上的视频(微信朋友圈怎么批量删除)

  • 小米10pro电池不耐用(小米10pro电池不耐)

    小米10pro电池不耐用(小米10pro电池不耐)

  • 拷贝兔是什么软件(拷贝 兔)

    拷贝兔是什么软件(拷贝 兔)

  • 荣耀手环5和5i对比(荣耀手环5和5i对比评测)

    荣耀手环5和5i对比(荣耀手环5和5i对比评测)

  • 苹果手机屏幕雾蒙蒙的(苹果手机屏幕雾蒙蒙的还有竖条)

    苹果手机屏幕雾蒙蒙的(苹果手机屏幕雾蒙蒙的还有竖条)

  • 拼多多商家发的红包补偿到账哪里(拼多多商家发的红包不领会退回吗)

    拼多多商家发的红包补偿到账哪里(拼多多商家发的红包不领会退回吗)

  • 探探注销后手机号还可以注册吗(探探注销后手机还会收到短信吗)

    探探注销后手机号还可以注册吗(探探注销后手机还会收到短信吗)

  • 键盘num灯亮按键无反应(电脑键盘num灯一直亮)

    键盘num灯亮按键无反应(电脑键盘num灯一直亮)

  • 怎么让语音助手读便签(怎么让语音助手一叫就出来)

    怎么让语音助手读便签(怎么让语音助手一叫就出来)

  • 未开通联通服务功能是什么意思(未开通联通服务功能怎么办)

    未开通联通服务功能是什么意思(未开通联通服务功能怎么办)

  • 快手怎么看别人的粉丝(快手怎么看别人浏览的足迹)

    快手怎么看别人的粉丝(快手怎么看别人浏览的足迹)

  • 天猫精灵ccl可以投屏吗(天猫精灵ccl可以看抖音吗)

    天猫精灵ccl可以投屏吗(天猫精灵ccl可以看抖音吗)

  • 苹果手机无法拍照是什么原因(苹果手机无法拍视频怎么回事)

    苹果手机无法拍照是什么原因(苹果手机无法拍视频怎么回事)

  • 微信加附近人没反应怎么办(微信加附近人没有提示)

    微信加附近人没反应怎么办(微信加附近人没有提示)

  • 手机照相机s是什么意思(手机照相的s是什么)

    手机照相机s是什么意思(手机照相的s是什么)

  • 京东自营丢件怎么赔偿(京东自营快递丢件如何处理)

    京东自营丢件怎么赔偿(京东自营快递丢件如何处理)

  • wifi热点被拉黑了怎么解除(wifi热点被拉黑名单)

    wifi热点被拉黑了怎么解除(wifi热点被拉黑名单)

  • 超级会员如何退款(怎么退出超级会员自动续费)

    超级会员如何退款(怎么退出超级会员自动续费)

  • 京东商品预约怎么取消(京东商品如何预约)

    京东商品预约怎么取消(京东商品如何预约)

  • 小米8来电秀怎么弄(小米来电秀怎么设置自己图片)

    小米8来电秀怎么弄(小米来电秀怎么设置自己图片)

  • 苹果xr定位不准确怎么调(苹果xr为什么定位不准确)

    苹果xr定位不准确怎么调(苹果xr为什么定位不准确)

  • tpc数据线是干什么用的(tpc充电线和普通的有什么区别)

    tpc数据线是干什么用的(tpc充电线和普通的有什么区别)

  • ps修复模糊不清的文字(ps修复模糊不清的图片)

    ps修复模糊不清的文字(ps修复模糊不清的图片)

  • 小米MIX的系统是那种(小米mix最好用的系统)

    小米MIX的系统是那种(小米mix最好用的系统)

  • hisuite什么意思(hist是什么意思中文翻译)

    hisuite什么意思(hist是什么意思中文翻译)

  • 荣耀20支持otg吗(荣耀20有ot g功能吗)

    荣耀20支持otg吗(荣耀20有ot g功能吗)

  • 电竞显示器怎么选?小编教你如何挑选专业电竞(电竞显示器怎么调整参数)

    电竞显示器怎么选?小编教你如何挑选专业电竞(电竞显示器怎么调整参数)

  • windows7旗舰版系统注册表被篡改的解决方法(win7旗舰版叫啥)

    windows7旗舰版系统注册表被篡改的解决方法(win7旗舰版叫啥)

  • 所得税为什么比利润高
  • 有限合伙需要报增值税吗
  • 收到发票冲红怎么做分录
  • 京东开专用发票需要用公户付款吗
  • 销售免税产品是什么意思
  • 开发票时怎么操作收款人 复核人 开票人
  • 房产税存在往期滞纳金吗
  • 结转损益管理费用在借方
  • 自建模具怎么做账
  • 工程项目劳务分包合同范本
  • 子公司注销是利空吗
  • 品牌活动推广文案
  • 大型医用设备维修效益成本分析 课件ppt
  • 招聘时开具的专用发票可以抵扣吗?
  • 进项税额转出怎么申报
  • 发票反写是什么时候
  • 退税上传,申报文件上传失败
  • 保障性住房享有怎么取消儿子的名字呀
  • 本年已预缴所得税
  • 不动产经营租赁属于现代服务吗
  • 未开票收入可以填写负数吗
  • 公司买汽车怎么做内账
  • 政府补贴收入账户是什么
  • 出口退税进口免税
  • 失控发票账务处理
  • 房地产开发企业所得税管理办法
  • 补报的年报可以更改吗
  • 税务局返还的个税手续费需要缴纳增值税吗
  • 如何在Excel中添加筛选项
  • 支付临时工工资计入什么科目
  • 运输公司转包业务怎么开票
  • 一年内的待摊费用可以一次性进入成本吗
  • 其他应收款年末余额较大
  • 冈山平原
  • 金融业营业税税率
  • 最大的apple商店
  • 劳务公司差额计税的税率
  • php写json
  • 计提坏账的比例是多少
  • 以旧换新方式销售金银首饰的消费税处理
  • 汽车折旧年限及年限
  • 快递费属于办公费用吗?
  • 留底税额怎么入账
  • 软件企业增值税计算
  • 个体户3万免税规定2019
  • 发票丢失一张罚款标准
  • 金税四期 税友
  • 小规模季度超过45万了怎么缴纳
  • 公司缴纳社保会计分录怎么做
  • 记账凭证摘要的填写要求有
  • 营业外支出会计编码
  • 增值税达不到税负怎么办
  • 可转换债券发行主体
  • 工程结算材料款抵扣增值税
  • 旅游业开具的是什么证明
  • 车票抵扣填在申请表哪里
  • 工会经费属于什么会计科目?
  • 如何结转生产成本至库存商品
  • 流动比率越高越好吗
  • sql如何学
  • sql server常规错误
  • 微软的搜索网站
  • MySQL利用命令行工具启动和关闭的命令是什么
  • solaris修改时间
  • ora01804怎么解决windows
  • linux bin和sbin
  • opengl learning
  • jquery width
  • dos命令大全及用法
  • javascript ie
  • javascript简介和语法
  • Android自定义控件开发入门与实战 百度网盘
  • 叠加计算公式
  • ApplicationId与PackageName的区别
  • 设置自定义
  • 税务部门公务员报考条件
  • 福建省地方税务局杨静
  • 12366纳税服务热线工作时间
  • 租房税多少钱
  • 什么是社保补缴的标准
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设