页面路由方式

路由-小程序 开发文档 https://developers.weixin.qq.com/miniprogram/dev/framework/app-service/route.html

一、wx.navigateTo(OBJECT)

保留当前页面,跳转到应用内的某个页面,使用wx.navigateBack可以返回到原页面。

注意点:1、url 需要跳转的应用内非 tabBar 的页面的路径  

示例代码

1、页面跳转(无参数)

// index.wxml 
<button bindtap="nav">click me </button> 

// index.js
Page({
  nav: function () {
    wx.navigateTo({
      url: '/pages/test/test' 
      
    })
  }
}) 

2、页面跳转(参数)

路由-小程序 开发文档 https://developers.weixin.qq.com/miniprogram/dev/framework/app-service/route.html

一、wx.navigateTo(OBJECT)

保留当前页面,跳转到应用内的某个页面,使用wx.navigateBack可以返回到原页面。

注意点:1、url 需要跳转的应用内非 tabBar 的页面的路径  

示例代码

1、页面跳转(无参数)

// index.wxml 
<button bindtap="nav">click me </button> 

// index.js
Page({
  nav: function () {
    wx.navigateTo({
      url: '/pages/test/test' 
      
    })
  }
}) 
2、页面跳转(参数)

// index.js 

Page({
  data: {
    testStr: '字符串str'
  },
  onLoad: function () {
      },
  nav: function () {
    wx.navigateTo({
      url: '/pages/test/test?str=' + this.data.testStr
   })
  }
}) 
// test.js 接收参数 Page({
  data:{},
  onLoad: function (options) {     console.log("接收到的参数是str=" + options.str);   } })

二、wx.redirectTo(OBJECT)

  1、关闭所有页面,打开到应用内的某个页面。

  2、需要跳转的应用内 非 tabBar 的页面的路径

wx.redirectTo({
  url: 'test?id=1'
})

三、wx.reLaunch(OBJECT)

  1、关闭所有页面,打开到应用内的某个页面。

四、wx.switchTab(OBJECT)

  1、跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面

示例代码

{
  "tabBar": {
    "list": [{
      "pagePath": "index",
      "text": "首页"
    },{
      "pagePath": "other",
      "text": "其他"
    }]
  }
}
wx.switchTab({
  url: '/index'
})

五、wx.navigateBack(OBJECT)

  关闭当前页面,返回上一页面或多级页面。可通过 getCurrentPages()) 获取当前的页面栈,决定需要返回几层。

// 注意:调用 navigateTo 跳转时,调用该方法的页面会被加入堆栈,而 redirectTo 方法则不会。见下方示例代码

// 此处是A页面
wx.navigateTo({
  url: 'B?id=1'
})

// 此处是B页面
wx.navigateTo({
  url: 'C?id=1'
})

// 在C页面内 navigateBack,将返回A页面
wx.navigateBack({
  delta: 2
})

 

 

 

 

 

posted @ 2018-04-07 16:42  UltaDarakht  阅读(473)  评论(0)    收藏  举报