55 lines
1.5 KiB
TypeScript
55 lines
1.5 KiB
TypeScript
import { leFuService } from './lefu/index'
|
|
|
|
App<IAppOption>({
|
|
globalData: {
|
|
operationsEngineer: false,
|
|
wasConnected: false
|
|
},
|
|
|
|
onLaunch() {
|
|
// 已登录则跳过登录页
|
|
const token = wx.getStorageSync('token') || null;
|
|
const userInfo = wx.getStorageSync('userInfo') || null;
|
|
// const userInfo = true;
|
|
if (token && userInfo) {
|
|
wx.reLaunch({
|
|
url: '/pages/home/home'
|
|
})
|
|
}
|
|
},
|
|
|
|
onHide() {
|
|
// 切后台:记录连接状态,挂起(断开但保留缓存设备,回前台可重连)
|
|
const wasConnected = leFuService.isConnected
|
|
this.globalData.wasConnected = wasConnected
|
|
if (wasConnected) {
|
|
leFuService.suspend()
|
|
}
|
|
},
|
|
|
|
onShow() {
|
|
// 回前台:如果之前连接过,自动重连
|
|
if (this.globalData.wasConnected) {
|
|
this.globalData.wasConnected = false
|
|
leFuService.autoConnect()
|
|
}
|
|
},
|
|
|
|
getWxLoginCode(): Promise<string> {
|
|
return new Promise((resolve, reject) => {
|
|
wx.login({
|
|
success: (res) => {
|
|
if (res.code) {
|
|
resolve(res.code)
|
|
} else {
|
|
reject(new Error('获取登录凭证失败'))
|
|
}
|
|
},
|
|
fail: (err) => {
|
|
reject(new Error(err.errMsg || '获取登录凭证失败'))
|
|
},
|
|
})
|
|
})
|
|
},
|
|
})
|