微信小程序通过转发或扫商品码进来时不走登录页
发布于 4 年前 作者 xiaojie 2403 次浏览 来自 分享

事件描述

经过实际测试,通过转发方式和扫码进来的时候,程序并不是根据app.json的页面顺序加载的,而是跳过了静默登录的页面,当进入需要登录的页面时需要额外处理。

页面加载:

微信小程序第一个页面是一个静默登录页面,判断缓存时候已经有登录信息,有则跳转首页,没有则进行静默登录,但是在页面分享的时候,直接进入了分享页面,并没有先从第一个静默登录页面进行加载。因为程序里面涉及到了购物车和加购、购买功能,所以这时候需要判断用户缓存信息,当没有用户信息时,需要跳到第一个静默登录页进行登录,然后登录后再跳转回来。这样,第二个问题又来了。

页面传参:

在跳转到登录页面时,发现“/pages/login/login?urlRef=/pages/product/product?id=123”这样一段代码在login页面进行接收时并不能获取到id参数,只能获取到urlRef中的“/pages/product/product”,这时候想了一个补丁办法,就是将id作为login的第二个参数传递,也就是“/pages/login/login?urlRef=/pages/product/product&id=123”这样传。传递过去后又出现了第三个问题。

页面跳转:

页面跳转有两种,一个是通过wx.navigateTo,一个是通过wx.switchTab跳转。因此在进行页面跳转时应加以区分。

在此将以上遇到的问题记录下来,给同时遇到此类问题的朋友作参考。
回到顶部