收藏
回答

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,

  }

}



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

3 个回答

  • 阡鹿该学习了
    阡鹿该学习了
    2020-05-19

    https://blog.csdn.net/weixin_41593408/article/details/106215353?utm_source=app

    经过一位大佬之手,问题终于解决啦!是异步问题!

    2020-05-19
    有用 2
    回复 4
    • 舍脂多
      舍脂多
      2020-07-01
      为什么新创建的云开发样例不会有异步问题
      2020-07-01
      回复
    • X
      X
      2020-09-03
      牛逼! 解决了
      2020-09-03
      回复
    • 杰_boat
      杰_boat
      2020-10-21
      太厉害了,终于找到是这个原因。
      2020-10-21
      回复
    • Edwin Xu
      Edwin Xu
      05-31
      感谢
      05-31
      回复
  • 29
    29
    2020-05-18

    你把代码放出来看一下啊,看个报错信息能咋看,

    2020-05-18
    有用
    回复 1
    • 阡鹿该学习了
      阡鹿该学习了
      2020-05-19
      放了,可以帮我看看吗,谢谢!
      2020-05-19
      回复
  • 俞哄哄📸
    俞哄哄📸
    2020-05-18

    第25行出现为空了 你可以检查下是否是请求回调中返回openid为null而你直接使用导致的

    若有帮助请帮忙点个"有用"谢谢👇👇

    2020-05-18
    有用
    回复 3
    • 阡鹿该学习了
      阡鹿该学习了
      2020-05-18
      emmm是没有返回到openid导致的,但是我找不到原因,刚刚调试又可以了,现在又不行了
      2020-05-18
      回复
    • 俞哄哄📸
      俞哄哄📸
      2020-05-21回复阡鹿该学习了
      没有返回openid你考虑下后端是否成功获取到正确返回呢
      2020-05-21
      回复
    • 阡鹿该学习了
      阡鹿该学习了
      2020-05-23回复俞哄哄📸
      已经解决了,评论里放了链接~
      2020-05-23
      回复
登录 后发表内容
问题标签