1.页面跳转方式
(1)标签跳转
open-type的属性值对应api里的用法即wx.的用法
1 <navigator url="/page/navigate/navigate?title=navigate" open-type="switchTab" hover-class="navigator-hover">跳转到新页面</navigator>
(2)wx.navigateTo 方法跳转
此方法能够从跳转的页面会回到当前页面
1 wx.navigateTo({ 2 url: ‘pages/a/a‘ 3 })
(3)wx.switchTab 方法跳转只适用于调转到设置了tabbar的页面
1 wx.switchTab({ 2 url: ‘pages/index/index‘ 3 })
(4)wx.redirectTo 方法跳转会关闭当前页面跳转到某个页面
1 wx.redirectTo({ 2 url: ‘pages/a/a‘ 3 })
(5)wx.reLaunch 方法跳转会关闭所有打开的页面,跳转到某个页面
1 wx.reLaunch({ 2 url: ‘pages/a/a‘ 3 })
(6)wx.navigateBack 方法返回到父页面 ,可以多级返回
1 // 此处是A页面 2 wx.navigateTo({ 3 url: ‘B?id=1‘ 4 })
1 // 此处是B页面 2 wx.navigateTo({ 3 url: ‘C?id=1‘ 4 })
1 2 // 在C页面内 navigateBack,将返回A页面 3 wx.navigateBack({ 4 delta: 2 //跳转的级数 5 })
2.页面跳转携带参数(以传递两个参数为例)
携带参数的跳转分两个方面,一方面是本页面传递参数,另一方是跳转页面接收参数,我就拿前两种方式作为例子
1.标签跳转携带参数
a页面
1 //a.wxml 页面传递 2 <navigator url="/pages/b/b?id=1&tu=‘a.jpg‘ " hover-class="none"> 3 跳转到b 4 <navigator>
b页面
1 //b.js 页面接收参数 2 onLoad: function (options) { //options用于接收上个页面传递过来的参数 3 var that = this; 4 that.setData({ //this.setData的方法用于把传递过来的id转化成小程序模板语言 5 b_id: options.id, //id是a页面传递过来的名称,a_id是保存在本页面的全局变量 {{b_id}}方法使用 6 b_tu: options.tu, 7 }) 8 }
2.wx.navigateTo跳转携带参数
a页面
1 //a.wxml 绑定跳转函数 2 <view bindtap=‘tapLogin‘ > 3 立即登录 4 </view>
1 //a.js 跳转函数 2 tapLogin:function() { 3 //这一步是为了把模板语言转化成js语言 4 var id=that.data.id; 5 var tu = that.data.id 6 7 wx.navigateTo({ 8 url: ‘/pages/b/b?id=‘ + 1 + "&tu=" + ‘a.jpg‘ 9 }); 10 11 },
b页面
1 //b.js 页面接收参数 2 onLoad: function (options) { //options用于接收上个页面传递过来的参数 3 var that = this; 4 that.setData({ //this.setData的方法用于把传递过来的id转化成小程序模板语言 5 b_id: options.id, //id是a页面传递过来的名称,a_id是保存在本页面的全局变量 {{b_id}}方法使用 6 b_tu: options.tu, 7 }) 8 }