Sow nothing reap nothing

其他入口打开微信小程序指定页面,授权登录后返回实现

已有1,552次关注

使用场景说明:
微信小程序使用业务场景中,很多时候需要通过微信公众号或者网页打开小程序特定页面
基于以上的使用情况下,微信小程序还需要用户授权登录后进行浏览使用;

问题来了:
既要跳转到指定页面,跳转页面过后需要授权登录(授权登录页为独立页面);
那么就需要小程序记录用户从微信公众号或者网页进入小程序的这个特定页面路由路径,以待用户在授权登录后路由能自动跳转到特定页面;

实现方法:
1、在小程序入口文件app.js中,使用onShow函数获取打开小程序的第一个页面路由路径。

//声明周期函数--监听页面显示
onShow: function (ret) {
    var urlWithArgs = ret.path + '?';
    for (var key in ret.query) {
        var val = ret.query[key]
        urlWithArgs += key + '=' + val + '&'
    }
    urlWithArgs = urlWithArgs.substring(0, urlWithArgs.length - 1);
    wx.setStorageSync('routPage-w', urlWithArgs);
}

2、授权页面操作方法中使用记录的路径来做跳转。

//授权成功函数
authorizationSuccess: function(){
    //其他代码
    //...
    
    //获取缓存的路径地址
    let routPage = wx.getStorageSync('routPage-w');
    //跳转记录地址
    wx.reLaunch({
        url: '/' + routPage
    });
    //使用后删除
    wx.removeStorageSync('routPage-w');
    
    //其他代码
    //...
},

已自动关闭评论