收藏
回答

Cannot read property 'openid' of null?

有没有大佬救救我!这个我找了好多我都没搞明白咋回事!

const config = require('/utils/config.js')

const util = require('/utils/util.js')

App({

  onLaunch: function () {


    if (!wx.cloud{

      console.error('请使用 2.2.3 或以上的基础库以使用云能力')

    } else {

      wx.cloud.init({

        traceUser: true,

        env: config.env

      })

      var openid = wx.getStorageSync('openid');

      console.log(openid,'-----------------------------------')

      if (openid{

        this.globalData.openid = openid

      } else {

        wx.cloud.callFunction({

          name: 'login',

          data:{},

          success: res => {

            console.log('------------------',res)

            this.globalData.openid = res.result.OPENID

            wx.setStorageSync('openid', res.result.OPENID);

          },

          fail: err => {

            console.error('[云函数] [login] 调用失败', err)

          }

        })

      }

      this.bindLastLoginDate()

    }

    this.updateManager();

    this.getAdvertConfig();

  },

云函数那边的login:

const cloud = require('wx-server-sdk')

cloud.init({ env: 'tangmenhao-1610c6' })

exports.main = (event, context) => {

  // 这里获取到的 openId、 appId 和 unionId 是可信的,注意 unionId 仅在满足 unionId 获取条件时返回

  let { OPENID, APPID, UNIONID } = cloud.getWXContext()


  return {

    OPENID,

    APPID,

    UNIONID,

  }

}



最后一次编辑于  05-19
回答关注问题邀请回答
收藏

3 个回答

登录 后发表内容
问题标签