美文网首页
微信小程序云开发报错解决: Setting data field

微信小程序云开发报错解决: Setting data field

作者: 寻芳岭 | 来源:发表于2020-03-16 12:54 被阅读0次

     

    最近在学习微信小程序云开发,刚一开始就遇到了问题。

    点击获取openid的时候控制台开始报错:

    [云函数] [login] user openid:  undefined

    VM97:1 Setting data field "openid" to undefined is invalid.

    然后我开始去百度搜索解决这个问题,各种方法都试过了,还是没有解决。换了一个思路,开始追踪代码:

    鼠标悬停到右边的 index.js:55,发现是/pages/index/index.js文件的第55行报的错误,我们打开这个页面看看:

    发现是在控制台打印了res.result.openId,这个变量是undefined,为了查看具体原因,我们先打印一下res里的东西吧,

    在后面加一行代码:console.log(res) 看打印的是什么东西:

    我们再编译一下看控制台打印的结果:

    从结果里可以看到,获取openId的接口调用是成功的,只不过openId字段的位置在result下的userInfo下,而之前代码是通过result下来访问openId字段的,所以会出现未定义的问题,猜测可能是由于腾讯接口调整导致的问题。至此,真相大白。我们去修改一下/pages/index/index.js文件的第55、56行,改成如下:

    console.log('[云函数] [login] user openid: ', res.result.userInfo.openId)

    app.globalData.openid = res.result.userInfo.openId

    最后,再编译一下,问题成功解决!

    相关文章

      网友评论

          本文标题:微信小程序云开发报错解决: Setting data field

          本文链接:https://www.haomeiwen.com/subject/jrrxbttx.html