【小程序】通过微信提供方法实现条码或二维码的扫描

news2025/1/6 18:32:46

概述

实现扫码获取信息,对接相应接口 可实现详情查询,已经是完整代码了copy都难么

详细

一、前期准备工作

软件环境:微信开发者工具
官方下载地址:微信开发者工具下载地址与更新日志 | 微信开放文档
​编辑

二、程序实现具体步骤

在页面设置按钮用于触发扫描功能

    <!--test.wxml-->
    <button style="margin-top:50px;" bindtap="getQRCode">扫一扫</button>
    <view>{{ qRCodeMsg }}</view>

3.js代码

通过wx.scanCode实现扫码功能

    //test.js
    Page({
      data:{
        qRCodeMsg:''
      },
      getQRCode: function(){
        var _this = this;
        wx.scanCode({        //扫描API
        //这里可以添加条件
          success: function(res){
            console.log(res);    //输出回调信息
            _this.setData({
              qRCodeMsg: res.result
            });
            wx.showToast({
              title: '成功',
              duration: 2000
            })
          }
        })
      }
    })

4.二维码和条码的区别方式

    onlyFromCamera:true,    //允许使用相册
    scanType:['barCode'],    //默认为二维码,barCode条码

三、案例运行效果图

和微信的扫一扫功能效果一样 不太好截图

*.不知道为啥发布有提示

      data: {
        //略略略......
      },
      onShow: function () {
        // 页面显示
        var vm = this;
        var length = vm.data.text.length * vm.data.size;//文字长度
        var windowWidth = wx.getSystemInfoSync().windowWidth;// 屏幕宽度
        vm.setData({
          length: length,
          windowWidth: windowWidth,
          marquee2_margin: length < windowWidth ? windowWidth - length : vm.data.marquee2_margin//当文字长度小于屏幕长度时,需要增加补白
        });
        vm.run1();// 水平一行字滚动完了再按照原来的方向滚动
        vm.run2();// 第一个字消失后立即从右边出现
      },
      run1: function () {
        var vm = this;
        var interval = setInterval(function () {
          if (-vm.data.marqueeDistance < vm.data.length) {
            vm.setData({
              marqueeDistance: vm.data.marqueeDistance - vm.data.marqueePace,
            });
          } else {
            clearInterval(interval);
            vm.setData({
              marqueeDistance: vm.data.windowWidth
            });
            vm.run1();
          }
        }, vm.data.interval);
      },
      run2: function () {
        var vm = this;
        var interval = setInterval(function () {
          if (-vm.data.marqueeDistance2 < vm.data.length) {
            // 如果文字滚动到出现marquee2_margin=30px的白边,就接着显示
            vm.setData({
              marqueeDistance2: vm.data.marqueeDistance2 - vm.data.marqueePace,
              marquee2copy_status: vm.data.length + vm.data.marqueeDistance2 <= vm.data.windowWidth + vm.data.marquee2_margin,
            });
          } else {
            if (-vm.data.marqueeDistance2 >= vm.data.marquee2_margin) { // 当第二条文字滚动到最左边时
              vm.setData({
                marqueeDistance2: vm.data.marquee2_margin // 直接重新滚动
              });
              clearInterval(interval);
              vm.run2();
            } else {
              clearInterval(interval);
              vm.setData({
                marqueeDistance2: -vm.data.windowWidth
              });
              vm.run2();
            }
          }
        }, vm.data.interval);
      }
    })

四、项目结构图

补充下项目结构图

五、最后

初次登录demo大师 略微紧张 写的不好勿怪(●ˇ∀ˇ●)

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

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

相关文章

机器学习之对神经网络的基本原理的了解

文章目录 神经网络与机器学习神经网络的结点 神经网络与机器学习 神经网络代替模型和用学习规则代替机器学习 神经网络代替模型&#xff1a; 神经网络是一种受到生物神经系统启发的计算模型&#xff0c;它由多个神经元层组成&#xff0c;这些神经元层之间有连接权重&#xff…

测试员有必要转测试开发吗?

为什么很多公司都在招测试开发&#xff1f; 质量保证和软件稳定性&#xff1a;测试开发人员在软件开发生命周期中扮演着关键的角色&#xff0c;他们负责编写和执行测试代码&#xff0c;以确保软件的质量和稳定性。他们可以帮助发现和修复潜在的问题和缺陷&#xff0c;提高软件…

现在公司都在用的CI/CD框架到底是什么?

目录 一&#xff0c;CI/CD到底是什么&#xff1f; 二&#xff0c;为什么要用CI/CD&#xff1f; 三&#xff0c;CI/CD的优缺点&#xff1f; 四&#xff0c;CI/CD都基于什么服务搭建&#xff1f; 五&#xff0c;CI/CD是否适用于所有类型的软件开发&#xff1f; 一&#xff0…

Quartus的2FSK调制解调verilog

名称&#xff1a;Quartus的2FSK调制解调verilog 软件&#xff1a;Quartus 语言&#xff1a;Verilog 要求&#xff1a;使用verilog实现2FSK的调制和解调&#xff0c;并进行仿真 代码下载&#xff1a;Quartus的2FSK调制解调verilog_Verilog/VHDL资源下载 代码网&#xff1a;…

SpringBoot之响应处理

文章目录 前言一、返回值处理器ReturnValueHandler流程关于HttpMessageConverters的初始化ReturnValueHandler与MappingJackson2HttpMessageConverter关联 二、内容协商内容协商原理底层源码 三、自定义MessageConverter总结 前言 包括返回值处理器ReturnValueHandler、内容协…

OpenGLES:绘制一个颜色渐变的圆

一.概述 今天使用OpenGLES实现一个圆心是玫红色&#xff0c;向圆周渐变成蓝色的圆。 本篇博文的内容也是后续绘制3D图形的基础。 实现过程中&#xff0c;需要重点关注的点是&#xff1a;如何使用数学公式求得图形的顶点&#xff0c;以及加载颜色值。 废话不多说&#xff0c…

FPGA的BPSK调制verilog

名称&#xff1a;BPSK调制verilog 软件&#xff1a;Quartus 语言&#xff1a;Verilog 要求&#xff1a; 一、设计说明 BPSK调制广泛应用于卫星通信、移动通信等领域。本题目要求设计一个基于直接数字频率合成技术的BPSK调制器&#xff0c;实现对输入周期数字比特流的BPSK调…

LVGL_基础知识

LVGL_基础知识 1、设置对象大小 lv_obj_t * obj lv_obj_create(lv_scr_act()); //lv_obj_set_width(obj, 300); //lv_obj_set_height(obj, 500); lv_obj_set_size(obj,200, 240);//和上面两句的效果一样2、获取对象大小 lv_obj_t * obj lv_obj_create(lv_scr_act()); //lv…

GPS硬件坐标转百度地图坐标

在地图定位开发中&#xff0c;许多定位模块输出坐标系是国际标准 WGS-84 坐标系&#xff0c;所以开发者在国内常见地图定位时&#xff0c;会发现与实际情况有几十米的误差。这并非模块问题&#xff0c; 而是国内地图采用了非标坐标系所致。 国内常见地图如高德地图使用 GCJ-02 …

Kubernetes集群+Keepalived+Nginx+防火墙 实例

目录 实验前期规划 1.拓扑图结构 2.实验要求 3.实验环境规划 一.kubeadm 部署 K8S 集群架构 1.环境准备 2.三个节点安装docker 3.三个节点安装kubeadm&#xff0c;kubelet和kubectl 4.部署K8S集群 &#xff08;1&#xff09;初始化 4.部署K8S集群 &#xff08;1&am…

133.【MySQL_运维篇】

MySQL_运维 (一)、日志 ⭐1.日志_错误日志 (ERROR-LOG)(1).错误日志_介绍(2).错误日志_示列 2.日志_二进制日志 (BINARY-LOG)(1).二进制日志_介绍(2).二进制日志_作用(3).二进制日志_格式(4).二进制日志_查看 (CMD)(5).二进制日志_删除 3.日志_查询日志 (GENERAL-LOG)(1).开启_…

SPA项目的登录注册实现以及数据交互问题

目录 前言 一. 登录&#xff0c;注册静态页面实现 1.1 ElementUI简介 1.2 基于SPA项目完成登录注册 1.2.1 在SPA项目中添加elementui依赖 1.2.2 在main.js中添加elementui模块 1.2.3 在src目录下创建views目录&#xff0c;用于存放vue组件 1.2.4 配置路由 1.2.5 修改项目…

简单而经典:Java中的冒泡排序算法详解

当谈到简单的排序算法时&#xff0c;冒泡排序&#xff08;Bubble Sort&#xff09;通常是其中之一。虽然它不是最高效的排序算法之一&#xff0c;但它的简单性和易于理解使它成为学习排序算法的良好起点。在本文中&#xff0c;我们将详细介绍Java中的冒泡排序。 冒泡排序的基本…

服务注册发现_服务自保和服务剔除机制

服务剔除&#xff0c;服务自保&#xff0c;这两套功法一邪一正&#xff0c;俨然就是失传多年的上乘心法的上卷和下卷。但是往往你施展了服务剔除便无法施展服务自保&#xff0c;而施展了服务自保&#xff0c;便无法施展服务剔除。也就是说&#xff0c;注册中心在同一时刻&#…

主从复制MySQL

概述 细节: 1.主库提供增删改的操作,从库提供查询的操作,分担主库压力 2.通过从库备份,全局锁不影响查询,只不过加了全局锁在从库中的数据同步会有一定延迟 3.从库也可以做别的服务器的主库 原理 主从复制的原理是基于二进制日志文件的,当主库中发生数据改变以后,会把SQL写入到…

力扣刷题-链表-翻转链表

反转链表是面试中高频题目&#xff0c;很考察面试者对链表操作的熟练程度。 如果再定义一个新的链表&#xff0c;实现链表元素的反转&#xff0c;其实这是对内存空间的浪费。 其实只需要改变链表的next指针的指向&#xff0c;直接将链表反转 &#xff0c;而不用重新定义一个新的…

vue指令(代码部分三)

<template><view><view click"onClick">标题&#xff1a;{{title}}</view><input type"text" v-model"title"/>----------------案例----------------<view class"out"><view class"row&…

使用CPU本地部署一个大模型

前言 不少人都想要部署一个自己的本地大模型&#xff0c;但是受限于昂贵的硬件资源只能作罢&#xff0c;即便是量化后的模型也通常要至少5G&#xff08;ChatGLM2-6B INT4&#xff09;的显存。因此我们想到能不能使用CPU来进行部署&#xff0c;当然了&#xff0c;要接受比较慢的…

Qt元对象系统

元对象系统 一 元对象系统的基本概念 qt 元对象系统主要提供功能&#xff1a;对象间通信的信号和槽机制&#xff0c;运行时类型信息和动态属性系统等。元对象系统是Qt对原有C进行的一些扩展&#xff0c;主要是为实现信号和槽机制引入的&#xff0c;信号和槽机制是Qt的核心特征…

二叉树题目:奇偶树

文章目录 题目标题和出处难度题目描述要求示例数据范围 解法一思路和算法代码复杂度分析 解法二思路和算法代码复杂度分析 题目 标题和出处 标题&#xff1a;奇偶树 出处&#xff1a;1609. 奇偶树 难度 4 级 题目描述 要求 如果一个二叉树满足下述条件&#xff0c;则称…