收藏
回答

如何在index.js中取出app.globalData.userInfo的值?

在app.js中给globalData.userInfo赋值了,在index.js中调用时却发现globalData的值为空对象,而空对象里面确是有值的,请问如何调用里面的userInfo的值?

index.js的第8行打印结果是空对象,第9行打印结果是undefined

代码碎片:https://developers.weixin.qq.com/s/6Evr3Um47ulo

补充:

很多大神认为是异步的问题,我在app.js中直接打印了一下,使用Promis写法

问题还是一样,在给globalData.userInfo赋值以前打印globalData是空对象,而实际上globalData中是有userInfo数值的。我觉得问题应该出在this.globalData={}上面,当我修改为this.globalData={userInfo:null}后

globalData不是空对象,显示userInfo:null,但是里面还有一个userInfo是有数值的

我在index.js页面获取globalData的数值结果与赋值语句前面的两个console一样,不知道怎样才能在index.js中获取正确的数值

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

5 个回答

  • 胖仔陈
    胖仔陈
    2021-03-30

    请问楼主这个问题解决了吗?

    2021-03-30
    有用
    回复
  • 加肥猫
    加肥猫
    2020-11-17

    你的代码片段运行不了,没有授权的时候跳转登录页缺失,不过能看出来问题所在,你在几个关键的地方打印console.log,观察一下执行顺序就明白了,globalData赋值后,index 页面获取 globalData前面一行和后面一行。

    2020-11-17
    有用
    回复 1
    • we
      we
      2020-11-17
      globalData赋值后,index.js取值还是赋值前的值,setTimeout以后仍然是赋值前的值
      2020-11-17
      回复
  • ShowFaker
    ShowFaker
    2020-11-17

    onShow 在 onLoad 之后 你要不写在 onShow 里?

    2020-11-17
    有用
    回复 1
    • we
      we
      2020-11-17
      我试过了,还是赋值前的值
      2020-11-17
      回复
  • 陈宇明
    陈宇明
    2020-11-17

    你在app.js的赋值的那个地方打印下。

    2020-11-17
    有用
    回复 1
    • we
      we
      2020-11-17
      试了一下,您再看看上面补充的问题
      2020-11-17
      回复
  • 拾忆
    拾忆
    2020-11-17

    异步问题,参考下这个:https://www.cnblogs.com/gygg/p/12868262.html

    2020-11-17
    有用
    回复 1
    • we
      we
      2020-11-17
      试了一下,您再看看上面补充的问题
      2020-11-17
      回复
登录 后发表内容
问题标签