代码拉取完成,页面将自动刷新
// app.js
const config = require('config');
const diaries = require('demo/diaries');
App({
onLaunch: function () {
},
// 获取用户信息
getUserInfo: function(cb) {
var that = this;
if (this.globalData.userInfo) {
typeof cb == 'function' && cb(this.globalData.userInfo)
} else {
// 先登录
wx.login({
success: function() {
wx.getUserInfo({
success: (res) => {
that.globalData.userInfo = res.userInfo;
typeof cb == 'function' && cb(that.globalData.userInfo)
}
})
}
})
}
},
// 获取本地全部日记列表
getDiaryList(cb) {
var that = this;
if (this.globalData.diaryList) {
typeof cb == 'function' && cb(this.globalData.diaryList);
} else {
let list = [];
this.getLocalDiaries(storage => {
// 本地缓存数据
for (var k in storage) {
list.push(storage[k]);
}
});
// 本地假数据
list.push(...diaries.diaries);
that.globalData.diaryList = list;
typeof cb == 'function' && cb(that.globalData.diaryList)
}
},
// 获取本地日记缓存
getLocalDiaries(cb) {
var that = this;
if (this.globalData.localDiaries) {
typeof cb == 'function' && cb(this.globalData.localDiaries);
} else {
wx.getStorage({
key: config.storage.diaryListKey,
success: (res) => {
that.globalData.localDiaries = res.data;
typeof cb == 'function' && cb(that.globalData.localDiaries);
},
fail: (error) => {
that.globalData.localDiaries = {};
typeof cb == 'function' && cb(that.globalData.localDiaries);
}
});
}
},
// 获取当前设备信息
getDeviceInfo: function(callback) {
var that = this;
if (this.globalData.deviceInfo) {
typeof callback == "function" && callback(this.globalData.deviceInfo)
} else {
wx.getSystemInfo({
success: function(res) {
that.globalData.deviceInfo = res;
typeof callback == "function" && callback(that.globalData.deviceInfo)
}
})
}
},
globalData: {
// 设备信息,主要用于获取屏幕尺寸而做适配
deviceInfo: null,
// 本地日记缓存列表 + 假数据
// TODO 真实数据同步至服务端,本地只做部分缓存
diaryList: null,
// 本地日记缓存
localDiaries: null,
// 用户信息
userInfo: null,
}
})
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。