2024年11月7日 11:06 by wst
小程序在页面操作中,经常碰到需要登录操作,登录后需要调回原来的页面的情况。
跳转之前保存当前页面的路径和参数,登录后再跳转回来。
保存当前参数:
function set_page(){
const pages = getCurrentPages();
const page = pages[pages.length - 1].$page.fullPath; //完整路由地址
console.log("page:", page)
uni.setStorageSync("current", decodeURIComponent(page))
uni.setStorageSync("current_type", 0) // 0普通页面,1Tab页面
uni.navigateTo({
url:'/pages/login/login',
})
}
登录后,调回原来的页面:
/**返回我的页面 */
function return_page(){
var url = '/pages/index/index';
var current = uni.getStorageSync('current') || ''
var current_type = uni.getStorageSync('current_type') || 0
console.log("current:", current)
if(current){
if(current_type == 1){
uni.switchTab({
url:current,
})
} else {
uni.navigateTo({
url: current,
})
}
} else {
uni.switchTab({
url:url,
})
}
}
1.在保存当前页面的路径的时候,还要保存页面类型:是普通页还是tab页。
2.返回的时候,需要根据页面类型决定跳转到普通页还是tab页。