美文网首页
微信小程序 wx.switchTab传参

微信小程序 wx.switchTab传参

作者: Accepted_ | 来源:发表于2021-05-07 15:35 被阅读0次

想使用wx.switchTab跳转到另一个Tab后,再跳转到目标tab的一个二级界面。直接传参发现并不可行。

  • 传参方
    let folderID = this.data.folderID
    //跳转到目标Tab,并传参folderID
    wx.switchTab({
      url: '../../Folder/FolderList?folderID=' + folderID,
    })
  • 接收方
/**
 * 生命周期函数--监听页面加载
 */
onLoad: function (options) {
    console.log(options)  //控制台打印结果为{},并没有获取到参数folderID
}

查看小程序官方文档【传送门:wx.switchTab(Object object)】可知,URL路径后不能带参数。

wx.switchTab官方文档参数说明

那就只有转换思路:跳转、传参分开实现。我的思路是使用全局变量传参。

  • 跳转方

    //...省略无关代码
    let folderID = this.data.folderID
    //把参数保存至全局变量
    getApp().globalData.folderID = folderID
    //跳转到目标Tab
    wx.switchTab({
      url: '../../Folder/FolderList',
    })
  • 目标tab的onShow函数

/**
 * 生命周期函数--监听页面显示
 */
onShow: function () {
    let folderID = getApp().globalData.folderID
    console.log("get folderID:" + folderID)
    if (folderID > 0) {
      //全局变量清空/归零/重置
      getApp().globalData.folderID = -1
      //使用传过来的参数folderID
      wx.navigateTo({
        url: '../FolderDetail?folderID=' + folderID,
      })
    }
}

需要注意,接收数据的逻辑最好写在onShow里,因为如果要跳转的页面已经在路由栈里面了,onLoad可能会不执行。

并且wx.navigateTo不会关闭原界面,即界面没销毁。如果由于业务需要再次wx.navigateTo的话,也可能导致该页面onLoad不执行。所以写在onShow最稳妥。

相关文章

  • 微信小程序 wx.switchTab传参

    想使用wx.switchTab跳转到另一个Tab后,再跳转到目标tab的一个二级界面。直接传参发现并不可行。 传参...

  • APP跳转小程序,小程序跳转APP,看我就够了

    本文涉及的内容:APP跳转小程序,跳转指定页面,传参。APP分享小程序。小程序跳转APP,传参。默认已集成微信SD...

  • 微信小程序页面之间传参

    微信小程序页面之间的传参方法有四种 1.页面url传参2.data-属性传参3.缓存传参4.全局变量传参 1.页面...

  • 微信小程序父组件传参给子组件

    微信小程序父组件如何传参给子组件Component 用法 父组件使用可以直接传参或者使用数据绑定向子组件动态传递数...

  • 微信小程序路由传参

    1.用bindtap 设定一个点击事件 2. 在属于以上这段代码的js文件中写这个事件 3 .在你跳到的那个文件的...

  • 微信小程序路由传参

    HTML的点击事件 首先在定义路由跳转的地方写点击事件并传参 在目标页用options接收

  • 微信小程序跳转传参

    navigateBack没办法携带参数,但可以定义返回页面的层级 pageA跳转navigateTo至pageB,...

  • 微信小程序 事件传参

    什么是事件 事件是视图层到逻辑层的通讯方式。 事件可以将用户的行为反馈到逻辑层进行处理。 事件可以绑定在组件上,当...

  • 微信小程序路由传参

    路由传参常用方式有以下几种 通过url传参// 产品列表页面 详情 // 或者wx.navigateTo({ ...

  • 微信小程序路由传参

    路由传参常用方式有以下几种 1. 通过url传参 上面的方式的参数不能是对象,如果需要传对象,可以将对象转成jso...

网友评论

      本文标题:微信小程序 wx.switchTab传参

      本文链接:https://www.haomeiwen.com/subject/bwosdltx.html