在uniapp中,可能会遇到跳转非tabber页面和tabber在同一个函数的情况,在这里,我遇到的一个写法是:
toPage(url) {
const tabberList = [] //这里写的是tabber页面的路径
if (tabberList.includes(url)){
return uni.switchTab({ url});
}
uni.navigateTo({ url });
}
这种写法其实也没有错,但是太过冗余复杂了,其实uniapp提供了navigateTo的失败回调,那么就可以改写成:
toPage(url) {
uni.navigateTo({
url,
fail() {
uni.switchTab({
url
});
}
});
}