# 原生tabbar的拦截 V 1.5.5+

注意

v3 模式下需要 v1.5.5 版本及以上的路由才支持 相反之!

# tabbar的拦截

在项目中,我们可能使用到官方提供的原生 tabbar,他提供的api很少,甚至不能愉快的拦截(一顿瞎几把吹)。所以才搞了个垫脚片。在路由插件中使用很简单,你可以声明开启拦截还是关闭拦截。其实路由插件有自动识别是否包含原生tabbar,做出相应的对策。当然你设置当前开关也是可以的!看操作....



 






const router = new Router({
    APP:{
        holdTabbar:false        //默认是true
    }, 
    routes:[
        // ....
    ]
});
1
2
3
4
5
6
7
8

很简单,通过配置 holdTabbar 来强制关闭tabbar拦截。告诉路由tabbar拦截不要你处理了,我自己搞的定!

# 相关api的重写

app 端下,路由插件默认对 uni.switchTab 进行重写了 如果你想在app端上使用原始的 uni.switchTab api,那么你可以这样:











 

//原始的使用
uni.switchTab({
    url:'/xxxxxx/xxxxx',
    ...args
})

//被路由插件重写后 继续使用原始路由api
uni.switchTab({
    url:'/xxxxxx/xxxxx',
    ...args
},true)
1
2
3
4
5
6
7
8
9
10
11