小程序 使用navigateBack返回攜帶參數


 在寫業務的時候,我們有時候會遇到這樣的場景:從a頁面跳轉到b頁面,然后需要再從b頁面返回到a頁面;並攜帶一些數據回來。

這個時候通常我們會使用到  

wx.navigateBack

但是由於navigateBack無法直接攜帶參數;傳參就需要另想辦法了

當然實現的方法有很多;這里要說的是通過setData的方式實現

b頁面代碼

 // 選定當前店鋪
  changeShopfn: function (e) {
    console.log(e)
    let shopinfo = e.currentTarget.dataset.item;
    console.log(shopinfo)
    let pages = getCurrentPages();//獲取頁面棧
    let prevPage = pages[pages.length - 2]; //上一個頁面
    //直接調用上一個頁面的setData()方法,把數據存到上一個頁面中去
    prevPage.setData({
      mydata:shopinfo
    })
    wx.navigateBack({
      delta: 1,
    })
  },

a頁面代碼

 onShow: function () {
    let pages = getCurrentPages();
    let currPage = pages[pages.length - 1]; //當前頁面
    console.log(currPage.data.mydata)
    let shopList=currPage.data.mydata;
    if(shopList){
      this.setData({
        shopList
      })
    }
  },

ok,這樣就解決了


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM