获取用户信息
util.js封装的getUserInfo、checkLogin等一系列方法可以实现小程序端用户登录、获取用户信息等逻辑。
开发者可以在app.js中封装获取用户信息的逻辑
- app.js
var util = require('utils/util.js');
util.init();
App({
globalData: {
userInfo: null
},
onLaunch: function () {
var that = this;
that.getUserInfo(); // 需要全局登录时才在此处调用
},
getUserInfo: function(cb) {
var that = this;
// 获取用户信息的时候,强制检测登录态
util.checkLogin({
success: function () {
util.getUserInfo(function (userInfo) {
that.globalData.userInfo = userInfo;
if (typeof cb == 'function') {
cb(userInfo);
}
});
},
fail: function () {
util.login(function (userInfo) {
that.globalData.userInfo = userInfo;
if (typeof cb == 'function') {
cb(userInfo);
}
});
}
});
}
});
在需要用到用户信息的页面js中可以调用app.js封装的业务逻辑
- pages/account/account.js
var app = getApp();
var util = require('../../utils/util.js');
util.init();
Page({
data: {
userInfo: null
},
onLoad: function () {
var that = this;
app.getUserInfo(function(userInfo) {
that.setData({
userInfo: userInfo
});
});
}
});