收藏
回答

循环后面跟setdata后数据出现empty array

小程序里循环后面跟this.setData。数据设置后在真机调试中无法看到数据但是在开发者平台上可以看到数据。循环不是死循环。

1)开发者工具截图

2)真机调试截图

3)代码片段

  async miaoshaGoods(){

    let that =this;

    var res = await WXAPI.goods({

      miaosha: true

    })

    const _now = new Date().getTime()

    if (res.code === 0{

      res.data.forEach(ele => {

        if (ele.dateStart{

          ele.dateStartInt = new Date(ele.dateStart).getTime() - _now

        }

        if (ele.dateEnd{

          ele.dateEndInt = new Date(ele.dateEnd).getTime() -_now

        }

      })

    }

    console.log("===data===" + JSON.stringify(res.data));

    that.setData({

      miaoshaGoods: res.data

    })

  }

4)函数调用放在了onShow

问题已经解决。是ios系统new date问题,望大家留意这个坑

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

1 个回答

  • 快乐男孩儿
    快乐男孩儿
    2020-07-06

    我发现是foreach那里出的问题。我将循环注释掉后。miaoshaGoods就可以被赋值

    2020-07-06
    有用
    回复 2
    • 快乐男孩儿
      快乐男孩儿
      2020-07-06
      去除循环后。真机测试中就有了数据
      2020-07-06
      回复
    • 快乐男孩儿
      快乐男孩儿
      2020-07-06回复快乐男孩儿
      加了循环,数据就无法赋值。以上操作。在开发者工具中,均有数据。真机调试时数据就没有
      2020-07-06
      回复
登录 后发表内容
问题标签