準備是在小程式初始化進行一下登入狀態判斷,每次登陸以後會在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,回撥,引數,元件等是否在當前版本可用。