小程序
小游戏
企业微信
微信支付
扫描小程序码分享
我在onShow中用场景值判断,然后跳转不同页面,但是使用wx.reLaunch页面会崩溃,直接空白,再次进去就是那个空白页。
使用wx.redirectTo是正常的,但是会跳转两次,会看到上次的页面,然后才进行的跳转
6 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
我测试了一下,没有你所说的会空白的问题,感觉是你的目标页面某些启动参数没能获取到
onShow: function () { var res = wx.getLaunchOptionsSync() if(res.scene == '1001'){ wx.reLaunch({ url: '/pages/index/index', }) } },
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
这个需求建议不要做在app.js里,既然是根据参数来跳转,那落地页应该是一个吧?在落地页的onShow或onLoad里来做。
app.js是全局的,这种只有某一部分用的功能最好别去干预它
如果要获取场景值,在app.js里的onshow取出来从到全局变量里给其他功能使用,在page的onload里处理就行了。
如果每个页面都有这种操作的话,就封装一下page的参数。
为什么要在app.js的 onShow 里 wx.reLaunch 呢
后台切前台,热启动,onShow都会执行,这样都要重新 wx.reLaunch 一遍?
wx.onAppRoute(res=>{
console.log(res)
})
wx.onAppRouteDone(res=>{
App({})
onLaunch()里进行场景值判断,跳转到不同页面
为什么不再首页处理这种逻辑,app.js 没做过这种跳转。不是很清楚。建议直接上一个代码片段
整个可复现的代码片段:https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
我测试了一下,没有你所说的会空白的问题,感觉是你的目标页面某些启动参数没能获取到
onShow: function () { var res = wx.getLaunchOptionsSync() if(res.scene == '1001'){ wx.reLaunch({ url: '/pages/index/index', }) } },
我测试过了,在其他页面onShow的时候reLaunch是没问题的
这个需求建议不要做在app.js里,既然是根据参数来跳转,那落地页应该是一个吧?在落地页的onShow或onLoad里来做。
app.js是全局的,这种只有某一部分用的功能最好别去干预它
如果要获取场景值,在app.js里的onshow取出来从到全局变量里给其他功能使用,在page的onload里处理就行了。
如果每个页面都有这种操作的话,就封装一下page的参数。
为什么要在app.js的 onShow 里 wx.reLaunch 呢
后台切前台,热启动,onShow都会执行,这样都要重新 wx.reLaunch 一遍?
wx.onAppRoute(res=>{
console.log(res)
})
wx.onAppRouteDone(res=>{
console.log(res)
})
wx.onAppRoute(res=>{
console.log(res)
})
wx.onAppRouteDone(res=>{
console.log(res)
})
App({})
onLaunch()里进行场景值判断,跳转到不同页面
为什么不再首页处理这种逻辑,app.js 没做过这种跳转。不是很清楚。建议直接上一个代码片段
整个可复现的代码片段:https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html