获取微信小程序码传递的参数 / 微信开发者工具模拟扫描小程序码调试

news2024/10/5 15:28:20

本文主要介绍如何在微信开发者工具中,模拟微信扫描小程序码打开小程序的场景,进行调试。
二维码调试可以看这篇文章:微信开发者工具模拟扫描二维码调试

  1. 添加编译模式
    添加一个咱们自定义的编译模式
    在这里插入图片描述

  2. 输入模式名称
    主要是方便后面的查找
    在这里插入图片描述

  3. 设置启动页面
    这里填写的页面是扫描小程序二维码后要跳转到的页面地址(我这里就是首页了)
    在这里插入图片描述

  4. 设置启动参数
    设置启动参数这里就比较麻烦了,和二维码的GET形式不一样了。

所有的参数都是写在scene里面的(这里不要直接写成GET的键值的方式,这里所有参数必须完整的写在 scene 里面)。例如:scene=950-0-1391 或者 scene=a=1&b=2(不推荐第二种方法,因为拿到的是 scene 的字符串,还需要自己解析)。
scene里面的参数按照自己的规则进行设置,因为拿到的时候一个整体,所以需要解析(我这里用的-进行分隔)。
onLoad(options)里面获取参数的时候,要用decodeURIComponent进行解码,因为在传递参数的时候,会对参数进行encodeURIComponent编码。
如果在每次启动的时候都要获取参数的话,需要用 wx.getLaunchOptionsSync() 来获取参数,因为有时候只用 onLoad(options) 里面的 options 获取不到。

后面有获取参数的示例代码

在这里插入图片描述
5. 设置进入场景
这里就是选择通过什么方式进入了,可以选择小程序码,也可以选择二维码。
在这里插入图片描述
6. 选择编译方式进行编译
每次项目重新编译后,都会自动进入扫描小程序码/二维码后我们设置的启动页面,同时自动传入设置的启动参数。
在这里插入图片描述

  1. 获取小程序码传递的参数

所有的参数都是写在scene里面的(这里不要直接写成GET的键值的方式,这里所有参数必须完整的写在 scene 里面)。例如:scene=950-0-1391 或者 scene=a=1&b=2(不推荐第二种方法,因为拿到的是 scene 的字符串,还需要自己解析)。
scene里面的参数按照自己的规则进行设置,因为拿到的时候一个整体(一整个字符串),所以需要解析(下面的例子用的-进行分隔)。
因为有时候用 onLoad(options) 里面的 options 获取不到,所以需要用 wx.getLaunchOptionsSync() 来获取参数。
因为小程序码在传递参数的时候,会对参数进行encodeURIComponent编码,所以要用decodeURIComponent进行解码,才可以正常使用。

Object wx.getLaunchOptionsSync() 官方文档:https://developers.weixin.qq.com/miniprogram/dev/api/base/app/life-cycle/wx.getLaunchOptionsSync.html

代码示例:

onLoad(options) {
  // 获取小程序启动时的参数
  let obj = wx.getLaunchOptionsSync();
  let query = null;
  if(query || obj.query.scene){
  	// 这里是用开发者工具模拟的时候要先用 encodeURIComponent 编译,模拟真实传递参数的效果,项目发布审核的时候这句话要注释掉
  	// query = options ? encodeURIComponent(options.scene) : encodeURIComponent(obj.query.scene);
  	query = options ? decodeURIComponent(options.scene) : decodeURIComponent(obj.query.scene);
  	//解析参数
    let web_key = query.split("-")[0];
    let web_template = query.split("-")[1];
    let web_id = query.split("-")[2];
    console.log("第一个参数:", web_key);
    console.log("第二个参数:", web_template);
    console.log("第三个参数:", web_id);
  }
},

在这里插入图片描述

具体如何生成无限制小程序码,可以看我的另一篇文章:生成无限制微信小程序码

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

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

相关文章

【观察】Oracle NetSuite+德勤中国税务Digital T-Suite:做中国企业“智慧税务”新助手...

伴随着新技术的快速发展,智慧税务成为国家技术力量驱动、治理能力升级背景下的一次全新税务实践。也正因此,继2015年国家税务总局在《“互联网税务”行动计划》中首次提出智慧税务建设目标后,2021年国家再次印发《关于进一步深化税收征管改革…

双非本科到大厂,贫困家庭到深圳买房,我的逆袭之路

20岁的你是否在拼命努力的奋斗呢? 人这一生,其实大大小小有很多的节点,每个年纪该干每个年纪的事情,一步一步的朝前走下去,应该是大部分人目前的现状。 最近一年来,这个号新增了很多的读者,大…

SpringSecurity(二十三)--OAuth2:使用JWT和加密签名(上)对称密钥加密

一、前言 最近阳了所以一直都在休整,大家一定要注意身体,能不阳就不阳,如果阳康后还是一直咳嗽,最好是能去医院看看,这绝对不是专家口中所说的新冠感冒那么简单,也绝对不是什么80%的无症状,大家…

计算机网络——路由信息协议RIP的基本工作原理

💟💟前言 ​ 友友们大家好,我是你们的小王同学😗😗 今天给大家打来的是 计算机网络——路由信息协议RIP的基本工作原理 希望能给大家带来有用的知识 觉得小王写的不错的话麻烦动动小手 点赞👍 收藏⭐ 评论&…

(四)devops持续集成开发——jenkins的全局工具配置之maven环境安装及配置

前言 本节内容我们主要介绍jenkins中如何集成自定义的maven环境及流水化组件maven插件的安装,这样我们就可以发布流水化的maven项目工程。 正文 上传并安装maven①上传maven安装包 ②解压maven安装包 unzip apache-maven-3.8.3-bin.zip ③配置maven依赖包环境变量…

Attention:何为注意力机制?

本文来自公众号“AI大道理” 人类利用有限的注意力资源从大量信息中快速筛选出高价值信息,这是人类在长期进化中形成的一种生存机制,人类视觉注意力机制极大地提高了视觉信息处理的效率与准确性。 attention从注意力模型的命名方式看,借鉴了…

带你认识不一样的人工智能

人工智能简称AI,它是研究、模拟、延伸和扩展人类智能的理论、方法、技术和应用系统的新兴技术。人工智能是计算机科学的一个领域,正在向机器传递智能,通过模拟人的某些思维过程和智能行为,让机器像人类一样工作、反应和决策。自人…

学习C语言笔记:初始C语言

学习内容: 1.运算符——; 2.函数——main()、printf(); 3.编写一个简单的C程序; 4.创建整型变量,为其赋值并在屏幕上显示其值; 5.换行字符; 6.如何在程序中写注释,创建包含多个函数的…

Docker网络下-自定义网络实战

通过前面两篇的学习,我们对docker网络及四大网络类型都了解了。本文,咱们就来学习docker的自定义网络。我们为什么需要自定义网络呢?是为了让各个主机分门别类,井井有条。方便关联,使得网络之间可以通过服务名进行通信。为什么在容器中,我们要通过服务名进行通信呢?那是…

分享一个门店会员管理系统模板

会员制对于很多人来说都不陌生,进入中国市场几十年的时间里在许多行业都得到了广泛应用。所谓会员制,是指通过向特定的消费群体发放会员卡,并由消费者缴纳会费或者充钱的形式可享受商家的价格折扣、服务等方面优惠的经营形式,从而…

数据库设计以及分布式事务的产生

一、数据库架构的演进 单点时代 1在早期互联网或者当前小型网站,一般数据库和APP都采用单点方式进行部署,系统简单,容易维护读写分离 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29随着互联网的发展,网站访问量越来越大,数据库最先达到瓶颈,…

jenkins环境基本配置

上一篇文章讲解了jenkins的安装,这一篇文章介绍jenkins安装后的基本配置 1.进入jenkins之后,选择右上角admin下拉框选择设置 2.修改密码,并重新登录 3. jenkins的汉化 3.1 Dashboard ➥ Mange Jenkins ➥ Manage Plugins插件管理 ➥ 已安装…

github上有什么好的unity开源项目?

大量项目来袭 一、github上的Unity开源项目 github上的Unity开源项目 项目名称:《TowerDefense》《TowerDefense》 项目链接:《TowerDefense》项目链接 项目简介: 基于 Unity 的塔防示例游戏,此项目主要用来上手和学习基于 Un…

为什么WordPress要禁止编辑主题和插件?如何进行设置呢?

一淘模板问大家为什么WordPress要禁止编辑主题和插件?如何进行设置呢?接下来我们一起了解一下。 首先,为了安全起见,WordPress的安全是非常重要的,禁止编辑主题和插件的许可,即使有人进来,也不…

C# 数据库 类库

一 ADO.NET 1 System.Data名称空间 2 这种访问数据库的技术叫ADO.NET 3 ADO.NET 实现数据库的访问 ①提供标准的CRUD接口; ② 对不同的数据库提供统一的访问接口; 二 ADO.NET技术的发展 1 ODBC(Open Database Connection) 2 DAO(Data …

excel文件管理:如何进行密码保护和破解? 上篇

对于一个公司,或者个人来说,有时候我们的数据往往需要加密。比如公司的经营状况和缴纳的税收有关系,人事档案中有每位员工的个人信息和工资组成说明,这些都是不需要无关人员知道的。微软对于EXCEL的设计就比较人性化,考…

如何搭建一套完整的数据指标体系?

如何搭建一套完整的数据指标体系? 你在工作中是不是这样的经常听到这样的对话: 老板:这次宣传活动总共带来了多少流量?你:大概有一万多人吧......老板:这次活动反响怎么样?你:有很多…

Linux操作系统实验3——进程切换

实验要求: 1.编写用户态程序,程序中需设计能引起进程状态发生变化的流程。 2.编写内核态模块,定时获取输入参数指定进程的运行状态。 3.通过内核态的记录指定进程运行状态变化的情况,需记录三种以上。 实验原理: 1. l…

有向图的拓扑序列

848. 有向图的拓扑序列 - AcWing题库 昨天看了这道题L3-031 千手观音 拓扑排序哈希表_他不是混子QAQ的博客-CSDN博客 就想着也用这道题的stl方法来试下 先来我的这个笨笨的方法,就当练习stl了,后面还有一个简便的stl STL知识点(刚知道: 对于…

linux系统中uboot的基本原理与实现方法

大家好,今天主要和大家聊一聊,U-boot的操作与实现方法。 目录 第一:U-boot基本简介 第二:u-boot烧写与启动方法 第三:uboot中信息查询命令 第一:U-boot基本简介 linux系统启动必须要有一个bootloade…