小程序页面跳转,带参数跳转,以及navigator跳转

一、单纯的页面跳转

跳转到的页面分 tabBar 页面和 非tabBar 页面。url路径可以写相对和绝对路径。

1、跳转到非导航页面,用 wx.navigateTo 方法


  
  
  1. wx.navigateTo({
  2. url: '../person/goldcoin/index' //或者url: '/page/person/goldcoin/index'
  3. })

2、跳转到tabBar导航页面,用 wx.switchTab 方法


  
  
  1. wx.switchTab ({
  2. url: '../person/goldcoin/index'
  3. })

二、带参数跳转

1、当前页面的参数,传到下一个页面。当前视图中view里要写入传递值。如下,通过bindtap绑定detail事件,并且把要传递的参数(title、time),以 “data-” 的格式传递。


  
  
  1. <view wx:for="{{list}}" wx:key="id">
  2. <view bindtap="detail" data-title="{{item.title}}" data-time="{{item.time}}">
  3. <label>标题:{{item.title}} </label>
  4. <label>时间:{{item.time}} </label>
  5. </view>
  6. </view>

2、当前页面的js如下:e.currentTarget.dataset.XX  即获取视图中 “data-” 格式的数据。并在navigateTo中传入参数进行跳转。


  
  
  1. detail: function(e){
  2. var title = e.currentTarget.dataset.title;
  3. var time = e.currentTarget.dataset.time;
  4. wx.navigateTo({
  5. url: "/pages/person/goldcoin_detail/index?detail=" + title + "|" + time
  6. })
  7. }

3、在跳转到的页面接收数据:数据存在options中,直接以 “options.参数名”的形式获取。


  
  
  1. data: {
  2. title: '',
  3. time: ''
  4. },
  5. onLoad: function (options) {
  6. var str = options.detail;
  7. var detail = str.split( "|");
  8. this.setData({
  9. title:detail[ 0],
  10. time:detail[ 1]
  11. })
  12. },

三、navigator页面跳转

1、不带参数


  
  
  1. <navigator url="/page/person/person">
  2. ......
  3. </navigator>

2、带参数


  
  
  1. <navigator url="/page/person/person?title=1&time=1234">
  2. ......
  3. </navigator>

更多详细请看官方文档

一、单纯的页面跳转

猜你喜欢

转载自blog.csdn.net/WXB_gege/article/details/106692747