问题模块 | 框架类型 | 问题类型 | 操作系统 | 操作系统版本 | 手机型号 | 微信版本 |
---|---|---|---|---|---|---|
客户端 | 小程序 | Bug | iOS | all | all | all |
- 当前 Bug 的表现(可附上截图)
使用获取小程序二维码接口时,path带上query(如:pages/index/index?key=value);
当query只有key,没有value(如:pages/index/index?key)。
iOS在onLoad或者是onLaunch时无法读取到query的key(此时value未传入)。
- 预期表现
应该在onLoad时可以读取到query中的key,就算是不传入value。
安卓可以正常读取
- 复现路径
null
- 提供一个最简复现 Demo
null
网友回复
谢谢。
现在暂时只能做到部分安卓兼容,iOS做不到。
填入appId:wx0dd6c62545703fef
app.js
App({
onLaunch: function (options) {
console.log('from onLaunch', options);
// 从微信扫码进来时
// 查看options是否有输出
// 部分安卓正常输出
// iOS没有任何输出
}
})
创建一个页面:card
card.js
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
console.log('from onLoad',options);
// 从微信扫码进来时
// 查看options是否有输出
// 部分安卓正常输出
// iOS没有任何输出
},
然后使用真机进入微信扫码
方法:
// 从微信扫码进来时
// 在控制台查看options是否有输出
// 部分安卓正常输出
// iOS没有任何输出
// 正常二维码path中携带参数为 page?key=value&key1=value1
// 现在情况为 page?key
// 二维码所在路径 images/测试用二维码.png
// 二维码填充内容: path = pages/card/card?fec7931dc2c575b9
貌似是你的 json 有错误,先不管了。
我大概明白你的意思了,我刚在 node 的 url parse 测试了一下,value 为空的时候,key 也是会保留,只不过对应的 value 变成 '' 空字符串,理论上我们这边也要和这种做法对齐。
我们后面的版本修复一下,但之前的客户端版本,由于已经发布出去了,无法再修改了,对于老版本还会存在这样的情况,建议还是现在小程序内兼容一下。
报错
还是不行。。。。
好,稍等
重新建个代码片段试试?
好像还是空的,确认你这边是有的吗
我的有,,,但是分享出去就没了
等下