微信小程序开发——苹果手机领取卡券出现参数错误(安卓正常)
异常描述:
微信小程序领取卡券,调用 wx.addCard 接口,安卓手机正常调起领取卡券界面,苹果手机、微信开发者工具中均出现“参数错误”,如图:
异常解析:
安卓手机能正常调起领取界面,那就说明领取卡券参数是没有问题的,那么苹果手机中出现的异常应该就是ios系统对js的某些兼容性问题了。认真再从头看一遍小程序开发文档中关于 领取卡券 的部分,能看到这么一句:
注:cardExt 需进行 JSON 序列化为字符串传入
既然安卓手机访问正常,那十有八九就是参数格式问题了。
问题解决:
检查下小程序中领取卡券的参数 cardExt ,如果是传入的JSON类型的数据,那么就需要对这个参数序列化下了。
JSON.stringify(cardExt)
修改完成之后重新编辑预览小程序,苹果手机和开发者工具应该都可以正常领取卡券了。
后记:
对于安卓手机,一如安卓系统的开源性,基于安卓系统的各种应用、浏览器对js的兼容性也比较好。但是对于苹果系统就不好说了,就如本例中JSON参数,安卓系统可以完美的兼容,苹果系统就不行了。所以如果要完美的兼容苹果手机,js的各种写法还是要严格来写的。
原创专业博客,转载请注明来源地址:https://www.cnblogs.com/xyyt/p/9707156.html
请发表评论