收藏
回答

求助,setData如何设置数据?

问题模块
API和组件

data: {

    checkboxList: [

          {name: '综合部', value:'0'},

          {name: '总经办', value:'1'}

        ],

},

现在需要渲染一个checkbox列表,数据格式如上:


var that = this;

    wx.request({

      url: 'https://XXXXXXXXXXX/GetDepartment',

      data: {

        departmentid: depID,

      },

      success: function(res){

        for (var i = 0; i < res.data.datalist.length; i++){

          console.log(res.data.datalist[i].F_DepartmentName);

          console.log(res.data.datalist[i].F_DepartmentID);

          that.setData({

            checkboxList: [

              {name: res.data.datalist[i].F_DepartmentName, value: i}

            ]

          })

        }

      },

有没有办法将请求回来的数据push进checkboxList而不是像setData每次都重新设置数据????

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

2 个回答

  • ym
    ym
    2017-07-05
    let list = []
    for (let i = 0; i < res.data.datalist.length; i++){
        list.push({
            name: res.data.datalist[i].F_DepartmentName,
            value: i
        })
    })
    that.setData({
        checkboxList: list
    })


    setData 方法用于将数据变化应用到视图。可以先把数组 push 到一个数组中,再用这个数组更新视图。

    2017-07-05
    赞同
    回复
  • 石榴楠
    石榴楠
    2017-07-05

    你处理完checkboxList之后,调用一次setData就好了。。。

    2017-07-05
    赞同
    回复