收藏
回答

getApp()函数和onLoad异步问题


如图是理想的执行顺序,但真正执行时却先执行了onload然后才是getApp(),导致openid此时显示"undefined",求解决方案,谢谢!

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

2 个回答

  • 卢霄霄
    卢霄霄
    01-15

    这是异步的问题哦,getApp早就执行了,不信你在getApp()下面console,你看谁先出来。。问题是你给openid赋值的位置,晚于了onLoad的执行

    01-15
    赞同 1
    回复 4
    • 火锅王
      火锅王
      01-15回复火锅王

      确实如你所说,应该是这里的globalData赋值openId晚了

      01-15
      回复
    • 火锅王
      火锅王
      01-15回复火锅王

      将globalData改成不是json的形式,而是就一个globalData就好了,不知道为什么..有高人指点一下吗

      01-15
      回复
    • 爱会多美
      爱会多美
      01-15回复火锅王

      大小写的问题吧,你看看你在2处地方的openid与openId

      01-15
      1
      回复
    • 火锅王
      火锅王
      01-15回复爱会多美

      真的是,太谢谢您了

      01-15
      回复
  • 爱会多美
    爱会多美
    01-15

    看楼主3点还在为这个问题困扰,说明你电脑该休息一下了,哈哈

    只能告诉你,你图上标的顺序是正确的

    至于为什么得不到正确的结果呢

    没准重启一下电脑就解决了,嘿嘿~~~

    也,或许是你globalData.openid根本就没有赋值呢


    晚上不要熬的那么晚,效率低,还影响生命质量嘛

    01-15
    赞同
    回复 1
    • 火锅王
      火锅王
      01-15

      谢谢您

      01-15
      回复