index.js文件引入es6-promise并在onLoad中寫下函數: var Promise = require('../../es6-promise.min.js');//引入ES6 onLoad: function () { var that = this; //第一步:更新用戶信息 var getUserInfo = function(){ return new Promise(function(resolve,reject){ app.getUserInfo(); resolve(); }); }; getUserInfo().then(function(){ //第二步:其它操作 }); }, |
并在app.js文件寫入下面代碼
//app.js var Promise = require('es6-promise.min.js');//引入ES6 App({ onError:function(res){ console.log(res); }, //獲取session getSession:function(){ var info=wx.getStorageSync('session'); return info.session; }, //獲取用戶信息 getUserInfo:function(){ var timestamp=getTimestamp();//獲取當前時間戳 //檢查微信登錄態是否過期 var checkSession = function(){ return new Promise(function(resolve,reject){ wx.checkSession({ fail: function(){ console.log('SESSION登錄態過期!'); reject(); }, success:function(){ resolve(); } }); }); }; //檢查SESSION緩存是否過期 var checkStorage = function () { return new Promise(function(resolve,reject){ wx.getStorage({ key: 'session', success: function(res) { if(res.data.expires){ if(timestamp>res.data.expires){//超時 resolve(); }else{ reject(); } }else{ resolve(); } }, fail:function(){ resolve(); } }); }); }; //刷新用戶信息 var updateUserInfo=function(){ return new Promise(function(resolve,reject){ wx.showToast({ title: '加載中', icon: 'loading', duration: 10000, mask:true }); resolve(); }); } //用戶授權登錄 var login= function(){ return new Promise(function(resolve,reject){ wx.login({ success: function(loginRes) { resolve(loginRes); }, fail:function(res){ reject(res); } }); }); } //獲取用戶信息 var getUserInfo = function (loginRes) { return new Promise(function(resolve,reject){ var that=this; wx.getUserInfo({ success: function (userinfoRes) { var data={ loginRes:loginRes, userinfoRes:userinfoRes } resolve(data); }, fail:function(res){ reject(res); } }); }); }; //用戶信息入庫 var request = function (data) { return new Promise(function(resolve,reject){ var userInfoStr=JSON.stringify(data.userinfoRes); wx.request({ url: 'https://www.soswen.com/weixin/Common/getSession', data: { |