封裝的函數主要用於檢查用戶是否登錄
封裝一個全局函數
在main.js文件下定義checkLogin全局函數,代碼的注解都在代碼塊里面
參數說明:
backpage, backtype 2個參數分別代表:
backpage : 登錄后返回的頁面
backtype : 打開頁面的類型[1 : redirectTo 2 : switchTab]
Vue.prototype.checkLogin = function(backpage, backtype){ //定義一個全局函數 var SUID = uni.getStorageSync('SUID');//用戶 id, var SRAND = uni.getStorageSync('SRAND');//用戶隨機碼, var SNAME = uni.getStorageSync('SNAME');//用戶昵稱, var SFACE = uni.getStorageSync('SFACE');// 用戶表情 if(SUID == '' || SRAND == '' || SFACE == ''){ //進行判斷是否登錄(登錄成功以后會產生id,隨機碼,用戶昵稱,用戶表情),如果沒有值,則會返回登錄界面 uni.redirectTo({url:'../login/login?backpage='+backpage+'&backtype='+backtype}); return false; } return [SUID, SRAND, SNAME, SFACE]; //登錄成功會返回這些登錄成功的信息 }
觸發檢查登錄的函數
onLoad:function(){ //頁面第一次加載是會觸發,可以把一些不需要實時更新的數據放入 var login = this.checkLogin('../index/index',1); //調用全局封裝的函數,產數在上面已經簡紹了 if(!login){ //如果沒有登錄,則會提示 uni.showToast({ title: '請先登錄!', icon:"none" }); return false; //不走下面的,也就是不觸發下面的函數 } this.getNews(); //登錄成功會觸發這個函數 },