新版微信页面底部导航问题

Posted 前端e站

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了新版微信页面底部导航问题相关的知识,希望对你有一定的参考价值。

在移动端开发微信页面的过程中,出现这样一个问题  

自己定好的底部导航栏下面会多出一行微信自带的底部返回栏,影响我们原型的体验,就需要对此做出优化;

首先明确问题所在

通过查询发现底部返回栏的机制是:页面出现跳转的时候会出现、页面向下滚动时会做隐藏;

解决问题

    1. 针对上面的机制,对应两种办法去隐藏底部返回栏:

  • 使用原生JS(已知是跳转出现,那我们就对跳转进行拦截,让所有的跳转使用 location.replace())
location.replace(URL)
  • 如果你使用vue-router
let toURL = null
router.beforeEach((to, from, next) => 
  if (toURL === to.path) 
    next()
  
  if (to.path !== from.path) 
    toURL = to.path
    router.replace(to.path)
    next()
  
)

    2.使页面可以向下滚动

     注意replace()带来的问题,当你使用replace()时,浏览器没有历史记录

  • 如果你不需要,那么恭喜你不用继续看下去了
  • 如果你很不幸,你需要历史记录,那么也存在两种场景

    2.1 微信浏览时不需要

    判断是否微信浏览,如果是就进行replace()

let isWeiXin= window.navigator.userAgent.toLowerCase().match(/MicroMessenger/i) == 'micromessenger'

    2.2 微信浏览时需要

  • 自己实现一个历史记录数组,每次replace()时存入记录

以上是关于新版微信页面底部导航问题的主要内容,如果未能解决你的问题,请参考以下文章

微信h5滑动隐藏底部导航栏

请问微信小程序跳转页面就没有底部导航栏怎么办?

ios微信网页出现底部返回导航栏

微信小程序[电商]-Tabbar 实现底部导航栏

微信小程序开发,导航栏右边的按钮怎么设置

微信小程序-原生开发实用教程02-添加全局页面配置页面底部导航