html52.com
我爱小程序-开发者交流社区

二维码传参读取不一致的问题

问题模块 框架类型 问题类型 操作系统 操作系统版本 手机型号 微信版本
客户端 小程序 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


网友回复

One:

谢谢。

现在暂时只能做到部分安卓兼容,iOS做不到。

One:

填入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



Special:

貌似是你的 json 有错误,先不管了。


我大概明白你的意思了,我刚在 node 的 url parse 测试了一下,value 为空的时候,key 也是会保留,只不过对应的 value 变成 '' 空字符串,理论上我们这边也要和这种做法对齐。


我们后面的版本修复一下,但之前的客户端版本,由于已经发布出去了,无法再修改了,对于老版本还会存在这样的情况,建议还是现在小程序内兼容一下。

One:

报错
报错

One:

还是不行。。。。

One:

好,稍等

Special:

重新建个代码片段试试?

Special:

好像还是空的,确认你这边是有的吗

One:

One:我的有,,,但是分享出去就没了

我的有,,,但是分享出去就没了

One:

等下

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

真正的个人免签约支付接口

云免签H5支付