微信小程序实现预约生成二维码功能

 更新时间:2024年04月16日 11:01:52   作者:十三的信徒  
通过点击预约按钮即可生成二维码凭码入校参观,下面小编通过实例代码讲解微信小程序实现预约生成二维码功能,感兴趣的朋友跟随小编一起看看吧

业务需求:点击预约按钮即可生成二维码凭码入校参观~

一.创建页面

如下是博主自己写的wxml:

<swiper  indicator-dots indicator-color="white" indicator-active-color="blue" 
 autoplay interval="2000" circular
>
<!-- 这部分是实现轮播图下面的小圆点,可以根据两个不同的属性来分别更改样式 -->
<swiper-item>
  <image src="/image/1606976870484.jpg"></image>
</swiper-item>
<swiper-item>
  <image src="/image/1606976921531.jpg"></image>
</swiper-item>
<swiper-item>
  <image src="/image/1606976936035.png"></image>
</swiper-item>
<swiper-item>
  <image src="/image/111.jpg"></image>
</swiper-item>
<swiper-item>
  <image src="/image/222.jpg"></image>
</swiper-item>
</swiper>
<button class="mybt" bindtap="yuyue">预约参观?</button>
<canvas type="2d"id="myQrcode"></canvas>

以及wxss:

/* pages/youke/youke.wxss */
page{
    background-color:#f3ffff; 
   }
swiper{
    margin-top: 50rpx;
    width: 100%;
    height: 430rpx;
    border-radius: 30rpx;
}
swiper-item {
    width: 100%;
    height: 100%;
    border-radius: 50rpx;
  }
.mybt{
    margin-top: 100rpx;
    width:300rpx;
    background-color: rgb(41, 113, 248);
    color: rgb(255, 255, 255);
}
view{
    font-size: 45rpx;
    text-align: center;
    margin-top: 100rpx;
}
canvas{
    width: 230rpx;
    height: 230rpx;
    margin-top: 100rpx;
    margin-left: 260rpx;
}

二.下载并配置第三方库

去Gitee下载工具包:

二维码工具包

http://​ https://gitee.com/WeiDoctor/weapp-qrcode-canvas-2d 

​下载zip:

将dist文件夹中的js文件全部复制到utils目录下:

三.完成业务

如下代码必须完整的导入再页面JS的最顶部:

import drawQrcode from '../../utils/weapp.qrcode.esm.js'

 如下是完整的代码:

// pages/youke/youke.js
import drawQrcode from '../../utils/weapp.qrcode.esm.js'
Page({
    data: {
        yynum:500,
        randomNum:"0"
    },
    onLoad() {
    },
    onReady() {
    },
    onShow() {
    },
    onHide() {
    },
    onUnload() {
    },
    onPullDownRefresh() {
    },
    onReachBottom() {
    },
    onShareAppMessage() {
    },
    yuyue(msg){
        // console.log("lll")
        if(this.data.yynum>0&&this.data.randomNum=="0")
        {
            wx.showToast({
                icon: 'success',
                title: '预约成功~',
              })
             let y=this.data.yynum;
              y--;
              this.setData({
                yynum:y
              })
              let r=(Math.random()*1).toFixed(4)*10000
              this.setData({
                randomNum:r
              }),
              console.log(r);
              const query = wx.createSelectorQuery()
        query.select('#myQrcode')
            .fields({
                node: true,
                size: true
            })
            .exec((res) => {
                var canvas = res[0].node
                drawQrcode({
                    canvas: canvas,
                    canvasId: 'myQrcode',
                    width: 260,
                    padding: 30,
                    background: '#4169E1',
                    foreground: '#ffffff',
                    text: '个人二维码信息',
                })
                wx.canvasToTempFilePath({
                    canvasId: 'myQrcode',
                    canvas: canvas,
                    x: 0,
                    y: 0,
                    width: 260,
                    height: 260,
                    destWidth: 260,
                    destHeight: 260,
                })
            })
        }
        else if(this.data.randomNum!="0")
        {
            wx.showToast({
                icon: 'error',
                title: '禁止重复预约~',
              })
        }
        else{
            wx.showToast({
              icon: 'error',
              title: '很抱歉,已无预约名额~',
            })
        }
    }
})

点击预约即可成功生成二维码~ 

到此这篇关于微信小程序实现预约生成二维码的文章就介绍到这了,更多相关小程序预约生成二维码内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 微信小程序prettier 格式化的配置方法

    微信小程序prettier 格式化的配置方法

    文章介绍了如何在微信小程序中安装和配置Prettier插件,以实现代码格式化,通过在开发者工具的设置中添加配置,并在项目根目录创建`.prettierrc`文件,可以自定义格式化规则,感兴趣的朋友跟随小编一起看看吧
    2024-11-11
  • 详解XMLHttpRequest(一)同步请求和异步请求

    详解XMLHttpRequest(一)同步请求和异步请求

    这篇文章主要为大家详细介绍了XMLHttpRequest 同步请求和异步请求,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-09-09
  • 简单了解JavaScript中常见的反模式

    简单了解JavaScript中常见的反模式

    这篇文章主要介绍了简单了解JavaScript中常见的反模式,反模式 是指对反复出现的设计问题的常见的无力而低效的设计模式,俗话说就是重蹈覆辙。 这篇文章描述了 JavaScript 中常见的一些反模式,以及避免它们的办法。,需要的朋友可以参考下
    2019-06-06
  • JS运动特效之链式运动分析

    JS运动特效之链式运动分析

    这篇文章主要介绍了JS运动特效之链式运动,结合实例形式分析了javascript链式运动的原理与具体实现技巧,需要的朋友可以参考下
    2018-01-01
  • 一文学会JavaScript如何手写防抖节流

    一文学会JavaScript如何手写防抖节流

    其实防抖和节流不仅仅在面试中会让大家手写,在实际项目中也可以起到性能优化的作用,所以还是很有必要掌握的。这篇文章就带大家彻底学会JavaScript手写防抖节流,希望对大家有所帮助
    2022-11-11
  • javascript+css实现单击颜色褪去效果

    javascript+css实现单击颜色褪去效果

    javascript+css实现单击颜色褪去效果...
    2007-08-08
  • axios/fetch实现stream流式请求示例详解

    axios/fetch实现stream流式请求示例详解

    这篇文章主要为大家介绍了axios/fetch实现stream流式请求示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-09-09
  • JavaScript实现单击下拉框选择直接跳转页面的方法

    JavaScript实现单击下拉框选择直接跳转页面的方法

    这篇文章主要介绍了JavaScript实现单击下拉框选择直接跳转页面的方法,涉及javascript控制页面跳转的相关技巧,需要的朋友可以参考下
    2015-07-07
  • js时间戳转yyyy-MM-dd HH-mm-ss工具类详解

    js时间戳转yyyy-MM-dd HH-mm-ss工具类详解

    这篇文章主要介绍了js时间戳转yyyy-MM-dd HH-mm-ss工具类,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • JavaScript实现select添加option

    JavaScript实现select添加option

    这篇文章主要介绍了JavaScript为select添加option的方法和示例,十分的简单实用,有需要的小伙伴可以参考下。
    2015-07-07

最新评论