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({}),渲染后就能看到想要的结果。