产品需求:返回到指定页面
不当操作:状态页面使用navigateTo跳转 导致返回上一页重复
解决: 使用getCurrentPages(),获取当前的页面栈,将页面栈进行遍历,判断子元素下的路由是否是你要跳转的页面,是的话,通过indexOf检索当前下标,然后使用wx.navigateBack进行路由跳转,返回的页面层级数为:页面栈的总长度减去(当前的下标+1)
// 资料提交成功
authenSuccess() {
const pages = getCurrentPages();
let deltaValue:any = ‘’
pages.forEach(element => {
if (element.route === ‘pages-expert/workbench/workbench’) {
deltaValue = pages.length-pages.indexOf(element)-1
}
});
wx.navigateBack({
delta: deltaValue
})
},