微信小程序addCard遇到的小坑

本文分享了使用微信JS-SDK时遇到的问题及解决方案,包括必须使用微信开发者工具进行调试、确保所有API调用放置于wx.ready内、jsapi签名需针对当前URL计算、解决config请求与API调用的同步问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

坑1,首先是一定要用微信开发者工具调试你的页面,虽然它就是一个Chrome内核包裹的玩意,但如果不用它的工具直接用Chrome你是收不到任何API返回的提示的

wx.config({
    debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
    appId: '', // 必填,公众号的唯一标识
    timestamp: , // 必填,生成签名的时间戳
    nonceStr: '', // 必填,生成签名的随机串
    signature: '',// 必填,签名,见附录1
    jsApiList: [] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
});

坑2,使用we.addCard一定要放在wx.ready里面,同时所有你使用的方法(例如wx.addCard)一定要放在wx.config的jsApiList里

坑3,jsapi签名拿回的sign,一定要是你当前访问程序的URL计算出来的api,不然会判断违法。也就是说出于安全考虑,开发者一定要在服务器端完成签名逻辑,并且建议使用者也在线上环境拿到signature

坑4,之前遇到一个问题,现象大概是:打开config中的debug:true是可以调用的,console返回的信息也是正确。但是一单关闭debug,addCard又不能用了,实在令人头大

最后尝试了下,一旦加入alert事件让页面暂停,就能顺利运行。所以认为这是config请求和addCard的同步问题

官网API解释过congfig可以放在MVVM框架中的mounted中执行,这样再调用addCard是不需要再次带上config的,问题得到解决

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值