收藏
回答

setdata赋值失败

框架类型 问题类型 操作系统 工具版本
小程序 Bug Windows 1.01.1805150




赋值没成功



第一行打印数据正常 是成功的   第二行对应的groupData值是空数据;   不知道是不是因为异步   真正赋值并未成功  ;但是如果是这样 为什么 第一行是成功的
所有的console.log() 是不是也都是异步的


回答关注问题邀请回答
收藏

5 个回答

  • 2019-07-17

    异步了,你在 getGroupData 方法的成功回调里面打印试试


    2019-07-17
    有用 1
    回复 1
    • 飞扬
      飞扬
      2019-07-17
      嗯 onload里的 console.log(this.data.groupData)先执行了;getGroupData还未赋值成功;
      2019-07-17
      回复
  • 飞扬
    飞扬
    2019-07-16
    onLoad (options) {
        this.setData({
          groupid: options.groupid
        })
        this.getGroupData();
        console.log(this.data)
        console.log(this.data.groupData)
      },
     
      /**
          * 获取小组数据
          */
      getGroupData: function () {
        var that = this;
        var group_url = app.globalData.sgjlbBase + '/groups/' + that.data.groupid
        wx.request({
          url: group_url,
          data: {},
          method: 'GET',
          header: {
            "Content-Type": "json",
            "tsessionid": wx.getStorageSync('jwt')
          },
          success: function (res) {
            that.setData({
              groupData: res.data
            })
          },
          fail: function (error) {
            console.log(error)
          }
        })
      },



    2019-07-16
    有用
    回复 2
    • 卢友新
      卢友新
      2019-07-18


      你可以看下,tt是空的,但是他会显示为{...}

      2019-07-18
      回复
    • 飞扬
      飞扬
      2019-07-23回复卢友新
      嗯 多谢 这样显示 有时候确实误导人
      2019-07-23
      回复
  • 卢友新
    卢友新
    2019-07-16

    getgroupedata方法看不到,但是我看这个结果是没问题啊


    console的对象在没有展开前,都是第一次的值,展开后会再次引用对象可能会变。{..} 是有可能为空对象的

    2019-07-16
    有用
    回复 1
    • 飞扬
      飞扬
      2019-07-16
      {...}展开里面是有值的 不是空对象 this.getGroupData()赋值成功了 从第一行打印结果可以看到
      2019-07-16
      回复
  • 申雪猛
    申雪猛
    2019-07-16


    2019-07-16
    有用
    回复
  • Hasaki
    Hasaki
    2019-07-16

    你可以把取值放在 setData的回调里面log一次试试。


    还有你的那个that是啥意思,,,

    2019-07-16
    有用
    回复 2
    • 飞扬
      飞扬
      2019-07-17
      嗯 是的 在setdata里 执行完后打印是有结果的 还是异步的问题
      2019-07-17
      回复
    • Hasaki
      Hasaki
      2019-07-17回复飞扬
      race了。
      2019-07-17
      回复
登录 后发表内容