微信小程序传递对象(数组)

在微信小程序中,若要将从接口获得的数组传递给下一个页面,需用var items = JSON.stringify(res.data)将对象转为字符串传递。在第二个页面,用var items = JSON.parse(this.options.items)把字符串转回对象操作,onload和onshow接收代码有区别。

      从接口获得的数组需要传递给下一个页面,需要通过var items = JSON.stringify(res.data)这句代码将对象转为字符串后进行传递。


  search: function (res) {
    console.log("搜索信息---" + this.data.searchValue)
    var self = this
    wx.request({
      url: 'http://127.0.0.1:8080/fybpi/pi.Goods.search.hf',
      data: {
        MemberID: 1              ,                //用户编号 
        goodName: this.data.searchValue            //搜索内容     
      },
      method: 'POST',
      dataType: 'json',
      success: function (res) {
        var items = JSON.stringify(res.data);
        self.setData({
          items: res.data
        })
        if (res.data.length != 0) {
          var url = '../home/search/search?items=' + items;
        }
        else {
          var url = '../home/searchno/searchno';
        }
        wx.navigateTo({
          url: url,
        })
      }
    })
  },

传递到第二个页面。通过这句代码 var items = JSON.parse(this.options.items);将字符串转换为对象进行操作。(onload接收上个页面的内容代码是options.items,onshow需要加一个this)

onShow: function (options) {
    var self = this
    var items = JSON.parse(this.options.items);
    console.log("search show", items)
    self.setData({
      items: items
    })
  },

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值