點(diǎn)擊返回上一頁(yè)事件:
returnPre:function(e){
let pages = getCurrentPages();
let prevPage = pages[pages.length - 2];
prevPage.setData({
discount: e.currentTarget.dataset.discount,
})
wx.navigateBack({
delta: 1,
})
}
其中g(shù)etCurrentPages() 函數(shù)用于獲取當(dāng)前頁(yè)面棧的實(shí)例为居,以數(shù)組形式按棧的順序給出 pages[pages.length - 2] 是上一頁(yè),-1是當(dāng)前頁(yè)然后直接調(diào)用上一頁(yè)的setData方法
discount 是上一頁(yè)定義的變量,e.currentTarget.dataset.discount為點(diǎn)擊時(shí)data-discount中設(shè)置好的要傳的數(shù)據(jù)促脉,
然后調(diào)用wx.navigateBack返回,delta表示返回的頁(yè)數(shù)誉券,如果delta大于現(xiàn)有頁(yè)面數(shù)桂塞,則返回到首頁(yè)瓶摆。
wx.navigateBack中還有success凉逛,fail,complete方法。
不過(guò)還有另一種可行的方法群井,就是在子頁(yè)中設(shè)置本地存儲(chǔ)状飞。然后在父頁(yè)中獲取。