微信路由navigateTo

// pages/index/index.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    res:2
  },
search: function(e) {
    var that = this;

    var url = '../test/test?name=' + 'dataitem1'
    console.log(url)

    wx.navigateTo({
      url: url,
      events: {
        // 页面回调监听
        acceptDataFromOpenedPage: function(data) {
          console.log(data)
        },
        test: function(data) {
          console.log(data)
          console.log(that.data.res)
        }
      },
      success: function(res) {
        // 传送数据给打开的页面
        res.eventChannel.emit('acceptDataFromOpenerPage', {
          data: 'dataitem2'
        })
      }
    })
  },
onShow: function(e) {
    //getCurrentPages获取的对象在非当前页可以更改当前页的数据
    console.log(this.data.res)
  },
})
// pages/test/test.js
Page({

  /**
   * 页面的初始数据
   */
  data: {

  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function(options) {
    // 监听事件,获取上一页面通过eventChannel传送到当前页面的数据
    const eventChannel = this.getOpenerEventChannel()
    eventChannel.emit('acceptDataFromOpenedPage', {
      data: 'thisData'
    });
    //获取上一页传送的数据
    eventChannel.on('acceptDataFromOpenerPage', function(data) {
      console.log(data)
    })
  },

  back: function() {
    //获取页面栈
    const CurrentPages = getCurrentPages()
    console.log(CurrentPages)

    const eventChannel = this.getOpenerEventChannel()
    eventChannel.emit('test', {
      data: '2'
    });

    var chengres = CurrentPages[(CurrentPages.length - 2)];
    if (chengres.route == "pages/index/index") {
      chengres.setData({
        res: 33
      })
      wx.navigateBack({
        delta: 2
      })
    }
  },
})
原文地址:https://www.cnblogs.com/xuanjiange/p/11675942.html