我也有这个问题 app.js的代码逻辑有问题导致的 好好排查一下吧
微信小程序扫码后跳到指定页面又瞬间跳到首页问题在发布到正式版后,与客户端联调。经常性会出现扫码后会先跳到二维码的指定页面,然后瞬间跳到首页上;然后退出小程序在扫码后,会一切正常跳转到指定页面。我看瞬间跳转到首页就像点击了返回按钮一样是从左边出来的,但是我项目中唯一强制跳转到首页是另一个页面。百思不得其解。求大佬们提出一些意见或者怎么才能查出问题所在,谢谢。 这是一个页面扫码进来的逻辑,先贴出来。代码里根本没有跳转首页或者返回页面的逻辑 [代码]onLoad: [代码][代码]function[代码] [代码](options) {[代码] [代码]// 如果本地有这个证明是扫码,这个会在app.js中onshow清空和列表点击清空。[代码] [代码] [代码][代码]if[代码] [代码](wx.getStorageSync([代码][代码]"isScanOption"[代码][代码])) {[代码][代码] [代码][代码]options = wx.getStorageSync([代码][代码]"isScanOption"[代码][代码]);[代码][代码] [代码][代码]}[代码][代码] [代码][代码]// 扫描进来的_meetingGuid,mac地址,isScan 是否是扫码[代码][代码] [代码][代码]let [meetingGuid, clientMac, isScan] = [[代码][代码]''[代码][代码], [代码][代码]''[代码][代码], 0];[代码][代码] [代码][代码]//如果存在证明是扫码进来 赋值给globalData[代码][代码] [代码][代码]if[代码] [代码](options && options.q) {[代码][代码] [代码][代码]const scene = decodeURIComponent(options.q);[代码][代码] [代码][代码]clientMac = [代码][代码]this[代码][代码].getUrlParam(scene, [代码][代码]'clientMac'[代码][代码]) [代码][代码]//mac地址[代码][代码] [代码][代码]meetingGuid = [代码][代码]this[代码][代码].getUrlParam(scene, [代码][代码]'meetingGuid'[代码][代码]);[代码][代码] [代码][代码]app.globalData.meetingGuid = meetingGuid;[代码][代码] [代码][代码]console.log([代码][代码]"创建投票-scene:::::::::"[代码][代码], scene)[代码] [代码] [代码][代码]//如果是扫码进来的要保存下来参数,因为如果是未登录跳到登录或者跳到完善信息的页面,在回来会不执行onload方法。所以要在onShow重新调用onload方法[代码][代码] [代码][代码]wx.setStorageSync([代码][代码]"isScanOption"[代码][代码], options);[代码][代码] [代码][代码]isScan = 1;[代码][代码] [代码][代码]} [代码][代码]else[代码] [代码]{[代码][代码] [代码][代码]isScan = 0;[代码][代码] [代码][代码]// wx.setStorageSync("createIsScanOption", null);[代码][代码] [代码][代码]clientMac = [代码][代码]""[代码][代码] [代码][代码]meetingGuid = app.globalData.meetingGuid;[代码][代码] [代码][代码]}[代码][代码] [代码][代码]this[代码][代码].setData({[代码][代码] [代码][代码]isScan: isScan[代码][代码] [代码][代码]})[代码][代码] [代码][代码]this[代码][代码].getMeetInfo(meetingGuid, clientMac, isScan, 2);[代码][代码] [代码][代码]// 如果存在 edit //表编辑页面需要获取参数[代码][代码] [代码][代码]if[代码] [代码](options && options.edit) {[代码][代码] [代码][代码]this[代码][代码].data.edit = [代码][代码]true[代码][代码];[代码][代码] [代码][代码]this[代码][代码].getVoteInfo(options.voteGuid);[代码][代码] [代码][代码]}[代码][代码] [代码][代码]},[代码] 我发现了这个规律,因为我在某个页面写了个 [代码]onUnload: [代码][代码]function[代码] [代码]() {[代码][代码] [代码][代码]wx.switchTab({[代码][代码] [代码][代码]url: [代码][代码]'/pages/meet/meet'[代码][代码] [代码][代码]})[代码][代码] [代码][代码]},[代码]当我扫码后进行一系列操作进入这个页面,退出小程序在扫码,就会出现以上我陈述的问题。 我好像明白逻辑了。他扫码后首先进入这个页面,然后跳转到扫码指定的路径时,就会执行onUnload这个方法,好笨哦,终于理清了。 再次提问,然而我的逻辑判断是错误的,只要退出小程序时上一个页面不是tab上的页面,就会跳到首页去,但是有一个二级页面又不会跳。找不到规律了,我知道我说的很乱。。。。哎。
01-10