微信小程序页面跳转三种方式

为了不让用户在使用小程序时造成困扰,微信小程序规定页面路径只能是五层,请尽量避免多层级的交互方式。
页面跳转的话就涉及到了多个页面层级

第一种:wx.navigateTo(OBJECT)
保留当前页面,跳转到应用内的某个页面,使用wx.navigateBack可以返回到原页面。

object参数说明:

参数 类型 必填 说明
url String 是 需要跳转的应用内页面的路径 , 路径后可以带参数。参数与路径之间使用?分隔,参数键与参数值用=相连,不同参数用&分隔;如 ‘path?key=value&key2=value2’

   goto: function (e) {
      let a =e.currentTarget.dataset.id
        wx.navigateTo({
               url: '../index/index?id'+id
        })
  }
 
 

另一个页面在 onLoad 接参数

 onLoad(options) {
    // console.log(options.id);
    let id =options.id
    
  },

第二种:wx.redirectTo(OBJECT)
关闭当前页面,跳转到应用内的某个页面。

OBJECT参数说明:

参数 类型 必填 说明
url String 是 需要跳转的应用内页面的路径

   goto: function (e) {
      let a =e.currentTarget.dataset.id
        wx.navigateTo({
               url: '../index/index?id'+id
        })
  }

第三种:wx.navigateBack(OBJECT)
关闭当前页面,返回上一页面或多级页面。可通过 getCurrentPages()) 获取当前的页面栈,决定需要返回几层。
OBJECT参数说明:

参数 类型 默认值 说明
delta Number 1 返回的页面数,如果 delta 大于现有页面数,则返回到首页

 onLoad: function(options) {
        var pages = getCurrentPages()
        var num = pages.length
        navigateBack:function(){
            wx.navigateBack({
                 delta: num
            })
        }
 }

你可能感兴趣的:(微信小程序,小程序)