9***@qq.com
9***@qq.com
  • 发布:2019-09-05 16:37
  • 更新:2019-09-05 16:37
  • 阅读:4019

tabbar进二级页面变通实现

分类:uni-app

业务需求,应用内嵌了一个商城模块,tabbar中有一项,点击后要跳入商城,也就是二级页面(二级页面也包括新的tabbar)。
但是官方的tabbar不开放切换事件,点击了某一项后一定会切换到对应的页面。
为了实现需求,变通想了一种方法:
首先要写一个空的tabbar对应页面,写入pages.json骗一下编译器,毕竟我们还是需要生成一个按钮的。
然后在空的页面的onShow里执行跳转uni.navigateTo到二级页面(redirect不行,进二级页面时首页的tabbar不消失)。
二级页面中监听返回事件onBackPress,uni.switchTab到首页某一项。(参考https://ask.dcloud.net.cn/article/35120)
执行效果马马虎虎吧,二级页面tabbar只能用前端写的了,而且因为多了一层中转,所以打开速度会变慢。
官方说 “如果想在App端实现点击某个tabitem不跳转页面,不能使用onTabItemTap,可以使用plus.nativeObj.view放一个区块盖住原先的tabitem,并拦截点击事件”,但是首先view的绘制及管理很麻烦(菜鸟无力啊),而且拦截点击事件后,该按钮就没有点击变色的效果了,用户体验不好。
如果有更好的方法,欢迎指教!

0 关注 分享

要回复文章请先登录注册