小程序页面跳转,带参数跳转,以及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>

 

更多详细请看官方文档

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章