// app.ts const voiceCbs: any = [] const voiceProps: VoiceProps = { noMute: false, pullUrls: [], pushUrl: false, } const loginCbs = [] const loginProps = { isLogin: true }; App({ globalData: { voiceProps, userInfo: { nickName: 'Hi,游客', country: '', avatarUrl: 'https://platform-wxmall.oss-cn-beijing.aliyuncs.com/upload/20180727/150547696d798c.png', gender: 0, city: '', province: '', language: 'zh_CN' }, token: '', isLogin: false }, addVoicePropsListener(cb: Function) { voiceCbs.push(cb) }, removeVoicePropsListener(cb: Function) { voiceCbs.splice(voiceCbs.indexOf(cb), 1) }, setVoiceProps(props: VoiceProps) { Object.keys(props).forEach((k: string) => { (voiceProps as any)[k] = (props as any)[k] }) voiceCbs.forEach((cb: Function) => cb(props)) }, async setLogin(status: boolean): Promise { this.globalData.isLogin = status return Promise.resolve(this.globalData.isLogin) }, onLaunch() { // 展示本地存储能力 const logs = wx.getStorageSync('logs') || [] logs.unshift(Date.now()) wx.setStorageSync('logs', logs) // 登录 wx.login({ success: res => { console.log(res.code) // 发送 res.code 到后台换取 openId, sessionKey, unionId }, }) }, })