小程序初始化加载,根据登录状态判断跳转首页还是登录页

准备是在小程序初始化进行一下登录状态判断,每次登陆以后会在storage里存一个user,根据这个值判断,没登陆过小程序启动进登录页面,登陆过直接跳转首页:

App({
    onLaunch: function() {
        //初始化加载,先判断用户登录状态
        if (wx.getStorageSync('user')) {
            wx.switchTab({
                url: 'pages/home/home'
            })
        } else {
            wx.reLaunch({
                url: 'pages/login/login'
            })
        }
  
    },
    globalData: {
  
    }
})

在aap.js里面初始化的时候进行判断,真机情况下没有登录状态时,还是会先加载首页面(一闪而过),之后跳转到login登录页面,登录成功后,返回首页。

小程序登录获取用户信息:

login.wxml

<button wx:if="{{canIUse}}" open-type="getUserInfo" bindgetuserinfo="bindGetUserInfo">授权登录</button>  

<view wx:else>请升级微信版本</view> 
login.js
Page({
  data: {
    //判断小程序的API,回调,参数,组件等是否在当前版本可用。
    canIUse: wx.canIUse('button.open-type.getUserInfo')
  },
  onLoad: function() {
    // 查看是否授权
    wx.getSetting({
      success: function(res){
        if (res.authSetting['scope.userInfo']) {
          wx.getUserInfo({
            success: function(res) {
              console.log(res.userInfo)
              //用户已经授权过
            }
          })
        }
      }
    })
  },
  bindGetUserInfo: function(e) {
    console.log(e.detail.userInfo)
    if (e.detail.userInfo){
      //用户按了允许授权按钮
    } else {
      //用户按了拒绝按钮
    }
  }
})

wx.canIUse(string schema)

判断小程序的API,回调,参数,组件等是否在当前版本可用。

 

posted on 2019-04-02 11:18  JoeYoung  阅读(10328)  评论(0编辑  收藏  举报