微信小程式(三):返回上一級頁面並重新整理(頁面棧)
阿新 • • 發佈:2018-12-27
在很多業務場景之下,需要返回上一級頁面,並進行重新整理,在微信小程式中的wx.navigateBack方法中,返回上一頁是不會重新整理的。如果上一頁的頁面載入是在onLoad方法中觸發的話,那麼可以修改為在onShow方法中觸發。
onLoad(Object query):頁面載入時觸發。一個頁面只會呼叫一次,可以在 onLoad 的引數中獲取開啟當前頁面路徑中的引數。
onShow:頁面顯示/切入前臺時觸發。
值得注意的是:如果上一級的頁面是從上上級頁面跳過來的話,之前在onLoad方法中,使用的options獲取的引數方法,那麼當修改為onShow載入的時候就需要,將這個方法稍微修改一下,可以選擇使用頁面棧的方式,獲取上上級頁面傳來的引數:
onLoad載入:
/**
* 生命週期函式--監聽頁面載入
*/
onLoad: function (options) {
var that = this;
that.setData({
project_id: options.project_id
})
},
修改為:
/** * 生命週期函式--監聽頁面顯示 */ onShow: function () { // 頁面初始化 options為頁面跳轉所帶來的引數 var that = this; let pages = getCurrentPages(); //頁面棧 let currPage = pages[pages.length - 1]; //當前頁面 that.setData({ name: currPage.options.name //獲取上上級頁面傳的引數 }) },
文章若有錯誤之處還望幫忙指正,謝謝。