文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

微信小程序使用weapp-qrcode.js生成二维码以及“扫普通链接二维码打开小程序”动态传递参数实现记录

2023-09-01 06:49

关注

参考文章原文链接:微信小程序使用weapp-qrcode.js完成二维码的生成_fairy_404的博客-CSDN博客

首先给需要生成二维码的页面创建一个canvas

因为我这里实现的是弹窗展示二维码,所有就把 canvas移出页面,小伙伴们根据自己需求进行调整,weapp-qrcode.js内容参考链接中就有,我这里就不展示了,接着就可以在页面中直接使用了

const QRCode = require('../../utils/weapp-qrcode');//根据自己文件实际位置修改Page({        data: {    },  // 点击生成按钮触发事件  handleGenerate(code) {      let that = this    new QRCode('myCanvas', {      text: 'https://xxx?id=' + code,      width: 141, //canvas 画布的宽      height: 141, //canvas 画布的高      padding: 10, // 生成二维码四周自动留边宽度,不传入默认为0      correctLevel: QRCode.CorrectLevel.L, // 二维码可辨识度      colorDark: "#0378CC",//分别为两种交替颜色      colorLight: "white",      callback: (res) => {        //工具回调数据        wx.hideLoading()        that.setData({            imagePath: res.path        })      }    })  },        onLoad(options) {        this.handleGenerate('123')//生成二维码    },})

通过以上方法就可以生成二维码了。

然后就是怎么实现扫描二维码跳转到小程序并接收参数了,先根据微信文档做好配置工作:

具体配置可查看:扫普通链接二维码打开小程序 | 微信开放文档

登录小程序后台配置>开发管理>开发设置>启用“扫普通链接二维码打开小程序”

 2、添加>填写二维码规则等信息

获取参数(这里不好测试,因为只有上传代码和规则上线发布才会生效,先记录一下吧),需要在跳转页面的onLoad进行接收

    onLoad: function (options) {            // 扫描邀请码进入        if(options.q && options.q != "undefined"){        const qrUrl = decodeURIComponent(options.q)         let jsonUrl = this.getwxUrlParam(qrUrl);        let inviteCode = jsonUrl.id;                console.log(inviteCode)        }      },  getwxUrlParam(url) {  let theRequest = {};  if(url.indexOf("#") != -1){  const str=url.split("#")[1];  const strs=str.split("&");  for (let i = 0; i < strs.length; i++) {  theRequest[strs[i].split("=")[0]] = decodeURI(strs[i].split("=")[1]);  }  }else if(url.indexOf("?") != -1){  const str=url.split("?")[1];  const strs=str.split("&");  for (let i = 0; i < strs.length; i++) {  theRequest[strs[i].split("=")[0]] = decodeURI(strs[i].split("=")[1]);  }  }  return theRequest;},

好了,基本就这样~~~撒花

来源地址:https://blog.csdn.net/qq_38405436/article/details/131249889

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-移动开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯