| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- const config = require('./config')
- global.isDemo = true
- App({
- onLaunch(opts) {
- console.log('App Launch', opts)
- if (!wx.cloud) {
- console.error('请使用 2.2.3 或以上的基础库以使用云能力')
- } else {
- wx.cloud.init({
- env: config.envId,
- traceUser: true,
- })
- }
- },
- onShow(opts) {
- console.log('App Show', opts)
- },
- onHide() {
- console.log('App Hide')
- },
- globalData: {
- hasLogin: false,
- openid: null
- },
- // lazy loading openid
- getUserOpenId(callback) {
- const self = this
- if (self.globalData.openid) {
- callback(null, self.globalData.openid)
- } else {
- wx.login({
- success(data) {
- wx.request({
- url: config.openIdUrl,
- data: {
- code: data.code
- },
- success(res) {
- console.log('拉取openid成功', res)
- self.globalData.openid = res.data.openid
- callback(null, self.globalData.openid)
- },
- fail(res) {
- console.log('拉取用户openid失败,将无法正常使用开放接口等服务', res)
- callback(res)
- }
- })
- },
- fail(err) {
- console.log('wx.login 接口调用失败,将无法正常使用开放接口等服务', err)
- callback(err)
- }
- })
- }
- },
- // 通过云函数获取用户 openid,支持回调或 Promise
- getUserOpenIdViaCloud() {
- return wx.cloud.callFunction({
- name: 'wxContext',
- data: {}
- }).then(res => {
- this.globalData.openid = res.result.openid
- return res.result.openid
- })
- }
- })
|