-
2018-09-25 17:14:13
场景值主要是通过这两个函数来传递onLoauch 和 onShow函数:
app.js onShow: function(options) { let option = JSON.stringify(options); console.log('app.js option-----' + option) console.log('app.js>>options.scene--------------------' + options.scene); var resultScene = this.sceneInfo(options.scene); console.log(resultScene); }, //场景值判断 sceneInfo: function(s) { var scene = []; switch (s) { case 1001: scene.push(s, "发现栏小程序主入口"); break; case 1005: scene.push(s, "顶部搜索框的搜索结果页"); break; case 1006: scene.push(s, "发现栏小程序主入口搜索框的搜索结果页"); break; case 1007: scene.push(s, "单人聊天会话中的小程序消息卡片"); break; case 1008: scene.push(s, "群聊会话中的小程序消息卡片"); break; case 1011: scene.push(s, "扫描二维码"); break; case 1012: scene.push(s, "长按图片识别二维码"); break; case 1014: scene.push(s, "手机相册选取二维码"); break; case 1017: scene.push(s, "前往体验版的入口页"); break; case 1019: scene.push(s, "微信钱包"); break; case 1020: scene.push(s, "公众号profile页相关小程序列表"); break; case 1022: scene.push(s, "聊天顶部置顶小程序入口"); break; case 1023: scene.push(s, "安卓系统桌面图标"); break; case 1024: scene.push(s, "小程序profile页"); break; case 1025: scene.push(s, "扫描一维码"); break; case 1026: scene.push(s, "附近小程序列表"); break; case 1027: scene.push(s, "顶部搜索框搜索结果页“使用过的小程序”列表"); break; case 1028: scene.push(s, "我的卡包"); break; case 1029: scene.push(s, "卡券详情页"); break; case 1031: scene.push(s, "长按图片识别一维码"); break; case 1032: scene.push(s, "手机相册选取一维码"); break; case 1034: scene.push(s, "微信支付完成页"); break; case 1035: scene.push(s, "公众号自定义菜单"); break; case 1036: scene.push(s, "App分享消息卡片"); break; case 1037: scene.push(s, "小程序打开小程序"); break; case 1038: scene.push(s, "从另一个小程序返回"); break; case 1039: scene.push(s, "摇电视"); break; case 1042: scene.push(s, "添加好友搜索框的搜索结果页"); break; case 1044: scene.push(s, "带shareTicket的小程序消息卡片"); break; case 1047: scene.push(s, "扫描小程序码"); break; case 1048: scene.push(s, "长按图片识别小程序码"); break; case 1049: scene.push(s, "手机相册选取小程序码"); break; case 1052: scene.push(s, "卡券的适用门店列表"); break; case 1053: scene.push(s, "搜一搜的结果页"); break; case 1054: scene.push(s, "顶部搜索框小程序快捷入口"); break; case 1056: scene.push(s, "音乐播放器菜单"); break; case 1058: scene.push(s, "公众号文章"); break; case 1059: scene.push(s, "体验版小程序绑定邀请页"); break; case 1064: scene.push(s, "微信连Wifi状态栏"); break; case 1067: scene.push(s, "公众号文章广告"); break; case 1068: scene.push(s, "附近小程序列表广告"); break; case 1072: scene.push(s, "二维码收款页面"); break; case 1073: scene.push(s, "客服消息列表下发的小程序消息卡片"); break; case 1074: scene.push(s, "公众号会话下发的小程序消息卡片"); break; case 1089: scene.push(s, "微信聊天主界面下拉"); break; case 1090: scene.push(s, "长按小程序右上角菜单唤出最近使用历史"); break; case 1092: scene.push(s, "城市服务入口"); break; default: scene.push("未知入口"); break; } return scene; } // 其中只有在传递 1020、1035、1036、1037、1038、1043 这几个场景值时,才会返回referrerInfo.appId
更多相关内容 -
普通二维码扫码进入小程序(详细教程——从配置到开发)
2022-03-09 14:59:26二维码扫码进入小程序 其实这个功能,微信官方也有进行详细的描述,官方文档,里面有更为详细的描述,下面只是简单的描述开发流程。 一、开发配置 进入小程序页面,开发管理->开发设置->扫普通链接二维码打开...二维码扫码进入小程序
其实这个功能,微信官方也有进行详细的描述,官方文档,里面有更为详细的描述,下面只是简单的描述开发流程。
一、开发配置
进入小程序页面,开发管理->开发设置->扫普通链接二维码打开小程序
这里设置主要给微信扫一扫功能,读取到这个二维码地址,能进入到小程序的页面。二、配置规则
上面说到给微信扫一扫读取到,那肯定需要对应的信息校验,下面的这张图。填写的规则要能访问到微信小程序提供的校验文件。
另外,我是通过nginx转发获取到的,对应的配置在下面location /code/fmXm0wx57M.txt { alias /data/code/fmXm0wx57M.txt; //这里主要是服务器存放改文件的位置 }
三、链接获取参数
上面两步配置好,其实就可以正常扫描二维码进入到小程序里了,但是有一些参数要获取;比如http://www.baidu.com/code/?id=xxx&name=xxx;
因为小程序扫码进去是可以在onLoad这个方法里面获取到对应信息的,所以就直接上代码。onLoad(option) { //这里是直接获取到二维码原生链接:即http://www.baidu.com/code/?id=xxx&name=xxx const url = decodeURIComponent(option.q) let res = {} //下面这个方法是方便收集成对象做的工具类 const query = (url.split('?')[1] || '').trim().replace(/^(\?|#|&)/, '') if (!query) { return res } query.split('&').forEach(param => { const parts = param.replace(/\+/g, ' ').split('=') const key = decodeURIComponent(parts.shift()) const val = parts.length > 0 ? decodeURIComponent(parts.join('=')) : null if (res[key] === undefined) { res[key] = val } else if (Array.isArray(res[key])) { res[key].push(val) } else { res[key] = [res[key], val] } }) //这里就可以去定义了 this.data.formData.id = res.id this.data.formData.name = res.name }
四、总结
其实就是配置后,然后在获取链接参数即可。
如果觉得这篇文章有用就点个赞吧! -
扫描普通二维码进入小程序
2021-07-19 10:48:343、配置完成后可以用草料把你的测试链接生成二维码,扫描二维码之后就会进入小程序。 4、在你配置的小程序功能页面你可以在onload中获取到你配置的https路径 onLoad: function(options) { if (options....1、登录微信公众平台
2、点击开发管理——>开发设置——>扫普通二维码链接打开小程序,点击添加配置:
打开添加配置:
在这里还是要注意一下你的二维码规则要符合规范,具体的二维码规范要求请看官网:
扫普通链接二维码打开小程序二维码规则
同时要注意如果你的规则没有发布,那么它是只对你配置的测试链接生效的,如果想要对所有符合规则的都生效的话,你需要发布二维码规则。未发布的时候使用的小程序是体验版本的,发布完规则之后使用的小程序就是线下版本的了。所以要是想在体验版本测试,你就必须要配置测试链接了。
3、配置完成后可以用草料把你的测试链接生成二维码,扫描二维码之后就会进入小程序。
4、在你配置的小程序功能页面你可以在onload中获取到你配置的https路径
onLoad: function(options) { if (options.hasOwnProperty('q') && options.q) { // 通过下面这步解码,可以拿到url的值,obj是获取链接里面的参数 const url = decodeURIComponent(options.q); wx.setStorageSync('qrSrc',url);//存储地址,用于跳转 const obj = util.urlParams(url); } }
urlParams方法用于获取链接的参数,我写在了util.js文件里面,代码如下:
const urlParams= function(url) { let obj = {} let str = url.slice(url.indexOf('?') + 1) let arr = str.split('&') for (let j = arr.length, i = 0; i < j; i++) { let arr_temp = arr[i].split('=') obj[arr_temp[0]] = arr_temp[1] } return obj } module.exports = { urlParams: urlParams };
5、我们的需求是扫描直接打开小程序比用web-view直接跳转到https页面的,所以我们可以在onShow函数里面写跳转
onShow(){ // 二维码扫描进来的 if(wx.getStorageSync('qrSrc')){ let src = wx.getStorageSync('qrSrc')+'&comminutyToken=' + wx.getStorageSync(constant.mapping.TOKEN); wx.removeStorageSync('qrSrc'); wx.navigateTo({ url:'./webView?src='+src }) } }
-
微信小程序 - 扫描小程序码进入小程序并获取参数
2018-11-16 18:04:27在进入的页面加上的onLoad方法,获取参数 onLoad(options) { if(options.scene) { let scene = decodeURIComponent(options.scene); console.log(scene) // 后续处理scene } } 或者,在app.js的onLaunch方法...在进入的页面加上的onLoad方法,获取参数
onLoad(options) { if(options.scene) { let scene = decodeURIComponent(options.scene); console.log(scene) // 后续处理scene } }
或者,在app.js的onLaunch方法中获取
onLaunch(options) { if(options.query.scene) { let scene = decodeURIComponent(options.query.scene); console.log(scene) // 后续处理scene } }
在开发阶段可以使用微信开发者工具进行场景模拟测试,编译后相当于扫描小程序码进入该页面
如果有多个参数,第一个参数是parent_id=46,第二个参数是object_id=6,
开始我的参数是“parent_id=46&object_id=6”,但是我打印 decodeURIComponent(options.parent_id) 的结果是“46&object_id=6”,打印 decodeURIComponent(options.object_id) 的结果是undefined。
后来改成“scene=46/6”,用“/”或者其它符号隔开,再分别取值。
onLoad(options) { // 扫码进入小程序 if(options.scene) { let scene = decodeURIComponent(options.scene); // '/'是我们定义的参数链接方式 let parent_id = scene.split("/")[0]; let object_id = scene.split('/')[1]; console.log(scene); // 46/6 console.log(parent_id); // 46 console.log(object_id); // 6 } },
另外,解释一下decodeURIComponent():
定义和用法
decodeURIComponent()函数可对encodeURIComponent()函数编码的URI进行解码。
语法
decodeURIComponent(uriString中)
参数
参数 描述 uriString中 必需。一个字符串,含有编码URI组件或其他要解码的文本。 -
微信公众号 微信服务号如何实现服务号点击消息跳转进入小程序
2020-07-27 18:16:11那么我们需求来了,现在必须要给用户推一条消息,而且用户点击消息要求跳转进入小程序 实现方法: 推送文本消息,但是我们放小程序页面地址进去以后就会变成连接 而且自动会在前面生成一个小程序斜S形的标志 ... -
扫码进入小程序指定页面踩坑
2019-06-14 10:22:07场景:b端生成c端小程序码,扫码进入c端指定页面并做来源标记。现要给b端小程序码添加一个参数。 一、给二维码加参数 微信:传参数据中使用scene 字段传我们想传的数据,键值会作为 query 参数传递给小程序,... -
微信扫码---进入小程序指定页面(传参)
2019-05-09 15:38:10商场的游戏机,用微信扫码获取机器id,进入到小程序指定页面,进行下单购买。 微信公众平台中 开发——开发设置——扫普通链接二维码打开小程序中配置的二维码有数量限制,不能满足多台机器的需要。 解决办法: 用... -
小程序扫描普通二维码进入小程序(坑点)
2019-06-13 14:51:291.从微信端扫码进入小程序,二维码带参数,如:https://api.xxx.com/?id=aaa 2.app.js onLaunch中的query.q能获取id=aaa 3.右上角退出小程序,最近使用中有该小程序记录 4.再次从微信端扫码进入小程序,二维码带... -
wx小程序开发工具模拟扫描二维码进入小程序
2019-11-02 15:02:19文章目录文章参考问题描述开发工具模拟扫描二维码进入小程序的解决办法 文章参考 微信小程序未发布 二维码图片如何扫描测试 问题描述 有个要识别二维码页面跳转的功能,想着怎么样模拟识别二维码呢,用开发工具... -
微信扫普通二维码进入小程序设置
2019-10-08 17:55:33小程序虽然有固定的二维码,但有些时候我们需要扫普通的二维码就进入到小程序中,微信是提供这样功能的,在小程序后台配置的时候发现还是有些小技巧的,这里面记录分享一下 1、登录微信公众平台,点击左侧 开发 – ... -
微信扫码进入小程序取参
2019-02-18 15:46:47小程序扫码 小程序扫码功能,官方只给了简单的介绍,和方法,这让很多像我一样的菜鸟,刚接触这样的功能时,完全无从下手,本章,我会详细的介绍一下,小程序扫码功能的实现。 注意事项: 1.小程序扫码功能,用处... -
微信小程序自定义菜单tabbar后初次进入小程序会出现两个tabbar
2019-02-14 11:10:06微信小程序自定义tabbar后,初次进去小程序会出现aap.json中配置的tabbar同时也会出现自定义的tabbar,当关闭小程序在此进入就好了只显示自定义tabbar 解决办法就是在小程序初次进去的首页中,第一次进入,必须在... -
小程序扫描二维码进入小程序带入scene参数使用Taro框架写法和原生写法
2020-02-25 10:56:13模式名称随意,启动页面我选首页,进入场景选着扫小程序码进入 然后选着二维码 原生代码如下 Page({ onLoad: function(options) { // options 中的 scene 需要使用 decodeURIComponent 才能获取到生成二维码时... -
小程序 - 获取扫码进入小程序携带的参数
2018-12-18 17:55:00参考文档获取二维码 - 接口 B:适用于需要的码数量极多的业务场景 前端需要关注以下的文档 后台开发者会将携带的参数放在scene中,演示获取scene中携带的id,代码如下 onLoad: function (options) { ... -
小程序调试扫描二维码进入小程序,调试各种场景进入小程序
2020-05-11 11:28:45使用开发者工具模拟扫描进入小程序内容页 使用开发者工具模拟进入小程序的场景 使用开发者工具模拟启动小程序的参数. -
怎么判断进入小程序的途径
2018-08-22 15:11:48在 app.js的onShow 方法里进行获取 onShow: function (options) { let option = JSON.stringify(options); console.log('app.js option-----' + option) ...从打印信息里可以看到 进入的路径和页面编号等信息 -
通过普通链接进入小程序
2018-07-04 21:52:37生成二维码贴附在商品包装上,用户即可扫码进入小程序 优点 生码数量无限制,链接可附带各种自定义参数 配置二维码规则 公众号后台 ———— 设置 ————— 开发设置 ———— 往下滑滑滑 ———— 扫普通链接... -
微信小程序-扫码进入小程序获取二维码携带参数
2017-05-11 09:22:07注:小程序内跳转地址携带参数和扫码进入链接携带参数 获取方式不一样微信通过扫码进入小程序-页面得到链接的参数为 options.q扫码进入的链接都是乱码的,需要UrlDecode一次。代码: var src = decodeURIComponent... -
小程序-扫码进入小程序获取二维码参数
2018-08-31 14:03:28onLoad: function (options) { let decode = decodeURIComponent(options.q); } -
微信小程序扫描二维码、小程序码进入并获得携带参数
2019-11-14 11:24:052.识别二维码进入小程序页面,因为是携带参数进入,所以要在小程序页面接收参数 3.接收参数 获取 scene 值 scene 字段的值会作为 query 参数传递给小程序/小游戏。用户扫描该码进入小程序/小游戏后,开发者可以获取... -
小程序扫描小程序码进入页面获取参数scene
2020-06-16 17:27:13onLoad: function (options) { if (options.scene) { //扫描普通链接进入小程序,并获取参数 const scene = decodeURIComponent(options.scene); console.log(scene);//a="123,123" let a = scene.slice(2);... -
小程序进入首页时弹出广告
2020-11-20 11:27:51项目需求,判断用户是否开通会员,没开通会员的话每次进入小程序弹出一个引导开通会员的弹窗,已经开通会员的不在弹 先看下效果图 wxml代码 <!-- 广告展示 --> <view class="mask" hidden="{{showAd}}"&... -
微信小程序判断是否是通过点击分享链接进入的小程序
2019-11-25 11:34:11方法一: App里 onLaunch 和 onShow 可以获得一个场景值 scene ,然后场景列表如下: 方法二: 分享出去的时候,在path里,就带上一个参数。onLoad的时候,参数里能拿到这个参数,则说明是分享卡片进来的。... -
小程序扫码进入指定页面
2020-04-20 10:49:12微信下拉进入小程序->回到首页 思路 需要做两步 一、判断用户是否是扫码进入 二、查看扫描的二维码是否里面带有路径参数/其他差数(根据自己的需求改) 代码 找到主组件App.vue(我是用的uniapp写的) // 1011 ... -
关于微信及支付宝小程序扫码及H5跳转进入
2020-10-26 17:43:11关于微信及支付宝小程序扫码及H5跳转进入关于微信及支付宝小程序扫码及H5跳转进入小程序如何绑定普通二维码H5页面如何跳转小程序 关于微信及支付宝小程序扫码及H5跳转进入 公司最近新的项目需求是可以分享普通二维码... -
小程序切出去重新进入
2019-12-08 21:03:27会重新触发default页面的onload事件,default页面的onload事件中也可以拿到启动参数options(Page页面的onlaod事件是可以拿到路由跳转过来携带的参数,小程序启动时默认进入default页面可以认为是一种路由)。... -
微信小程序 首次进入加载引导页
2020-03-31 16:08:54微信小程序 首次加载引导页 让用户登录 再次进入直接进入首页的解决方案 实现思路:在app.json中第一个加载项设置为一个空白页面 login1 "pages": [ "pages/login1/login1", "pages/login/login", "pages/... -
微信小程序笔记(制作进入小程序二维码,调用腾讯OCR识别车牌,获取用户资料)
2018-10-11 11:59:47最近被要求制作一个微信小程序用作为工厂的入厂登记,功能大概就是访客来厂前需要扫描二维码进入小程序,授权微信个人资料,以获取昵称以及绑定的手机号码,小程序内有拍照识别来访车牌号功能,以此就需要用到标题中... -
在进入微信小程序之前显示登录页面的解决方案
2020-07-20 14:20:57这几天想要在小程序进入之前做个登陆的页面 用户输入账号密码正确才能进入小程序 但是看了因为小程序一启动就是默认进入tabar里的第一个页面 上了百度查也是没有哦好的方式 自己琢磨了以下的几种方式: 1、使用路由... -
微信小程序 通过场景值判断从什么路径进入微信小程序
2018-09-24 17:47:51下面博主将会通过图文讲解的方式分享关于通过场景值判断是从什么途径进入到本微信小程序中,最后附上源码! 判断从什么路径进入到微信小程序 所以需要获取场景值、 途径1:app.js 以下是微信小程序项目源码:...