微信小程序页面传参跳转的坑

总结一下页面传参跳转和它的坑
功能实现:点击一个界面,跳转到对应的子页面
父页面
wxml代码:

<view class="goods" catchtap="onDetail" data-bzId="{{item.bzId}}">

注意绑定data-bzId
js代码:

// ///传参跳转
onDetail: function (e) {
    // console.log(e)
    var imgId = e.currentTarget.dataset.bzid; //先获取id值
    console.log("this id is " + imgId)
    wx.navigateTo({
      url: "../rewards-detail/re-detail?id=" + imgId 
    });
  },

第一个坑!:绝对路径在这里无效! 要用相对路径。用绝对路径报错如下:
在这里插入图片描述
还有说url的单双引号问题可能也会导致找不到 但是我没遇到

子页面:
js代码:

// 
onLoad:function(option){
    var deId=option.id//option后面的 .id 对应的是父页面 url中?后面的名字.
    // console.log(deId);

    var bzData=bzsData.bzslist[deId]
    // console.log(bzData)
    this.setData({
      bzData:bzData
    })    
  }

第二个坑:option是onLoad里跳转时才传进来的参数 如果你当前页面就是目标子页面,是不会拿到值的

思路总结

1.父页面元素绑定data-XX (获取id)
2.父js配置:先获取id值url通过 ? 连字符传参
3.子js在onload中配置:先获取option.id (id可以任意起名 与父页面url?连字符后面的对应)

原创文章 10 获赞 10 访问量 413

猜你喜欢

转载自blog.csdn.net/qq_43446007/article/details/105517350
今日推荐