注意:注意针对自定义顶部导航,或者是使用了uni.navigateBack这个方法的界面。
//如果当前界面存在上一个界面,就返回上一个界面
//如果当前界面是分享进入的,没有上一个界面,这样的情况直接返回到指定的界面上去。
back() {
/*uni.navigateBack({
delta: 1
})*/
//@zxyuns 处理兼容,如果没有上一级界面则返回首页
const pages = getCurrentPages();
if (pages.length === 2) {
uni.navigateBack({
delta: 1
});
} else if (pages.length === 1) { //判定没有上一页得情况下,才进行跳转到指定界面
uni.switchTab({
url: '/pages/home/home',
})
} else { //这里应该是不会用到得
uni.navigateBack({
delta: 1
});
}
},
if(pages.length === 1) { uni.switchTab({ url:'/pages/home/home'}) } else { uni.navigateBack({ delta: 1 }) }
if else就能解决问题,没必要if else if else