1.wx.navigateTo({
url:"xxxx"
})
先是保存跳轉前的路徑到頁面棧,然後跳轉到應用內非 tabBar 的頁面的路徑,當點擊返回按鈕時,跳轉回上一頁。
2.wx.switchTab({
url:"xxx"
})
跳轉的頁面必須是tabBar
中聲明的頁面,只能是tabBar之間相互跳轉,所以沒有返回按鈕。
3.wx.reLaunch({
url:"xxx"
})
關閉當前頁面,跳轉前的頁面不保存到頁面棧。相反,關閉當前頁面,頁面棧裏的所有路由出棧。所以打開的是一個全新的不帶返回的頁面。
4.wx.redirectTo({
url:"xxx"
})
redirectTo跳轉到的頁面不保存到頁面棧中。
例如:有ABC,三個頁面,A頁面使用redirectTo跳轉到B頁面,然後B頁面使用navigateTo跳轉到C頁面,點擊返回按鈕,進入A頁面。
5wx.navigateBack({
delta:1
})
delta:頁面棧中出棧到第幾個頁面。
例如ABCD四個頁面,A頁面使用navigateTo到B頁面,B頁面使用navigateTo到C頁面,C頁面使用navigateTo到D頁面,
此時頁面棧有ABCD四個路由,如果delta:2,則返回到B頁面。
6.<navigate src="xxx"></navigate>
src跳轉的頁面只能是非tabBar頁,也能src中也能攜帶參數跳轉src="xxxx?xx="+xx
7.getCurrentPages();
獲取頁面棧信息,可以對頁面棧中路由中的data做修改。
let pages = getCurrentPages();
let currentPage = pages[pages.length-1](當前頁面)
let data = currentPage.data(當前頁面的data);
然後可以對data裏面的數據進行修改。
修改後記住需要重新渲染頁面:this.setData({}),渲染後就能看到想要的結果。