收藏
回答

访问网络操作时没有按顺序执行应当怎样解决

访问网络操作时没有按顺序执行应当怎样解决

onLoad: function (e) {
    this.setData({
      jlid:e.jlid
    })
    this.userStat()
    wx.cloud.callFunction({
      name: "login"
    }).then(res => {
      this.setData({
        openid: res.result.OPENID
        console.log("测试1"+ res.result.OPENID )
     })
      this.isCanyu()
      this.showAllItems();
    })
  console.log("测试2"+this.data.openid)

先打印出"测试2",再打印出"测试1"我想要的结果是按顺序执行,应当怎样解决

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

2 个回答

  • 你吼那么大声干什么
    你吼那么大声干什么
    2018-11-16

    promise了解一下

    2018-11-16
    赞同
    回复
  • Snail先森💕จุ๊บ
    Snail先森💕จุ๊บ
    2018-11-15

    小程序网络请求基本都是异步的,可以试试两种方法:

    一是:将需要执行的测试2代码放在测试一后面;

    二是:将要执行的测试一代码封装回调后执行测试二代码;

    2018-11-15
    赞同
    回复 2
    • fl
      fl
      2018-11-15

      有没有什么语句在回调之外等待结果再去执行呢

      2018-11-15
      回复
    • Snail先森💕จุ๊บ
      Snail先森💕จุ๊บ
      2018-11-16回复fl

      ES6的Promise了解一下

      2018-11-16
      回复