两层循环,怎处理的?

来源:20-14 电影页面数据绑定(下)

qq_欠你的幸福_0

2017-05-20

循环中有嵌套循环,第二层循环的数据需要用第一层数据的id去获取,这时怎处理才行?

写回答

4回答

7七月

2017-05-21

你这样重复的setData肯定是覆盖的,setData通常是setData一个数组,然后再wxml里做wx:for循环,wx:for循环也是可以嵌套的

0
0

qq_欠你的幸福_0

提问者

2017-05-21

  



getsomething: function (res) {

    var that = this;

    var friends = [];

    for (var idx in res.data) {

      var data = res.data[idx];

      var temp = {

        content: data.content,

        datetime: data.datetime,

        id: data.id

      }

      friends.push(temp);

      var id = data.id;

      that.getpics(id);

      var readyData = {

        friends: friends,

      }

      this.setData(readyData);

    }

  },

  getpics:function(id){

    var that = this;

    wx.request({

      url: 'https://small.jingjiexinxi.com/index.php/home/index/getfriendspics',

      data:{

        id:id

      },

      success: function (res) {

        console.log(res)

       that.getsomepics(res);

       //that.setData(res.data);

      }

    })

  },

  getsomepics:function(res){

    var that = this;

    var friendspics = [];

    for (var idx in res.data) {

      var data = res.data[idx];

      var temp = {

        path: data.path,

        datetime: data.datetime,

        id: data.id 

      }   

      friendspics.push(temp);

      var readyData1 = {

        friendspics: friendspics,

      }

      this.setData(readyData1);

    }

  },


0
0

qq_欠你的幸福_0

提问者

2017-05-20

我问具体点。

比如第一层数据有5组,每组里面都有一个第二层循环。第一层数据顺利拿到,正常显示。在for语句内,用第一层的变量去获取第二层的数据,console出来有5个object,,但setdata后,始终只有1个object显示。有点怀疑是被覆盖掉了。但又想不出法子解决。请老师说具体些。谢谢

0
0

7七月

2017-05-20

第二次循环直接使用第一层中定义的变量。

0
0

微信小程序入门与实战(全新版) 超20000人学习的好课

4年同步微信官方迭代,累计20000+人学习, 比微信官方更火爆!

23960 学习 · 6930 问题

查看课程