账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    使用微信开发者工具,多次刷新链接wx.ready()不执行?
    75
    0
    需要获取微信的回调函数才能获取用户定位开启抽奖,但是我们测试的时候发现使用苹果手机访问链接会无法抽奖。然后使用微信开发工具测试,多次刷新时也会出现这个情况,wx.ready()不执行,导致后面的程序没法跑,有设置setTimeout没有用。第一部分的代码:if (this._isMobile()) { wxapi.wxRegister(this.wxRegCallback(data))})第二部分的代码:wxRegister (callback) {axios.get('/trace/trace-service/weixin/sign', { params: { url: decodeURIComponent(window.location.href.split('#')[0]) }}).then((res) => { const data = res.data.data // PS: 这里根据你接口的返回值来使用 wx.config({ debug: true, // 开启调试模式 appId: data.appId, // 必填,公众号的唯一标识 timestamp: data.timestamp, // 必填,生成签名的时间戳 nonceStr: data.nonceStr, // 必填,生成签名的随机串 signature: data.signature, // 必填,签名,见附录1 jsApiList, // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 openTagList: ['wx-open-launch-weapp'] }) console.log('返回openid', data) wx.error(function (error) { console.log('回调error') console.log('WXERR====>', error) }) wx.ready((r) => { console.log('回调ready') console.log('WXERR====>wx', r) // 如果需要定制ready回调方法 if (callback) { callback() } })}).catch((error) => { console.log(error)}).......}
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 达浪达浪达浪 普通会员 1楼

      在微信开发者工具中,如果多次刷新链接,wx.ready()不执行,可能的原因有以下几种:

      1. 路由头文件没有正确引用:在开发过程中,需要在wx.ready()中引入对应的wx.config.js、wx.ready()配置文件、wx.ready()和wxss样式文件。如果这些文件没有正确引用,可能会导致wx.ready()不执行。

      2. 确保app.json的配置正确:在app.json中,需要配置wx.ready()的执行逻辑。例如,可以使用wx.ready()来判断是否完成了一些事件处理,然后在完成这些事件处理后再执行wx.ready()。

      3. 确保小程序已经启动:在第一次启动小程序后,需要设置微信服务器的超时时间,否则可能会出现“超时”的错误。可以在app.json中设置wx.ready()的超时时间。

      4. 检查网络状况:如果小程序的网络状况不佳,可能会导致wx.ready()不执行。可以通过console.log()查看网络状态。

      5. 检查代码是否有错误:如果代码中存在错误,可能会导致wx.ready()不执行。可以使用开发者工具的调试功能来检查代码是否有错误。

      如果以上方法都不能解决问题,建议你联系微信开发者支持。

    • 拳拳杀气 普通会员 2楼

      在微信开发者工具中,如果多次刷新链接,wx.ready()不执行,可能的原因有以下几种:

      1. 路由头文件没有正确引用:在开发过程中,需要在wx.ready()中引入对应的wx.config.js、wx.ready()配置文件、wx.ready()和wxss样式文件。如果这些文件没有正确引用,可能会导致wx.ready()不执行。

      2. 确保app.json的配置正确:在app.json中,需要配置wx.ready()的执行逻辑。例如,可以使用wx.ready()来判断是否完成了一些事件处理,然后在完成这些事件处理后再执行wx.ready()。

      3. 确保小程序已经启动:在第一次启动小程序后,需要设置微信服务器的超时时间,否则可能会出现“超时”的错误。可以在app.json中设置wx.ready()的超时时间。

      4. 检查网络状况:如果小程序的网络状况不佳,可能会导致wx.ready()不执行。可以通过console.log()查看网络状态。

      5. 检查代码是否有错误:如果代码中存在错误,可能会导致wx.ready()不执行。可以使用开发者工具的调试功能来检查代码是否有错误。

      如果以上方法都不能解决问题,建议你联系微信开发者支持。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部